Support Topics Documentation Slack YouTube Blog

Relations broken with BackendlessSwift

Are you looking for help?

This is a support forum for reporting issues related to Backendless services. Please note that due to our support policy we cannot provide you help with debugging your code, consulting in regards to any language or third-party library usage. For this kind of questions we recommend using more appropriate forums like Stack Overflow.

In order to suggest you a quality solution, we shall usually ask you to provide the details mentioned below first. Including them into your topic right away helps us to start investigating your issue much faster.

In case you have a suggestion or an idea, the details below are not always required, though still any additional background is welcome.

Backendless Version (3.x / 5.x, Online / Managed / Pro )

Online

Client SDK (REST / Android / Objective-C / Swift / JS )

Swift

Application ID

E1004849-39AA-8FA5-FF25-93C23D13CB00

Expected Behavior

Please describe the expected behavior of the issue, starting from the first action.

  1. I make a find request using a DataQueryBuilder and use either setRelated() or setRelationsDepth()
  2. An object or an array of objects is returned and the relations are also populated
  3. I can access the relations and map them to a Swift array of that object type.

Actual Behavior

Please provide a description of what actually happens, working from the same starting point.

Be descriptive: “it doesn’t work” does not describe what the behavior actually is – instead, say “the request returns a 400 error with message XXX”. Copy and paste your logs, and include any URLs.

  1. A request is made and data is returned
  2. The data has relations, but the relations do not convert properly to locally defined classes
  3. You can see in the screenshot below that the data is returned, but can’t be mapped to an array of the data’s type

Reproducible Test Case

Please provide a simple code that could be run in a new clean app and reproduce the issue.

If the issue is more complex or requires configuration, please provide a link to a project on Github that reproduces the issue.

Bitbucket Link:

https://bitbucket.org/sandrews4862/soiltech

  1. run pod install
  2. start the app
  3. place a breakpoint on line 40 of CompaniesViewController
  4. type in “Micro” in the search bar
  5. see that the returned data “companyData[0]” has data for the relation “sheets”
  6. in the xcode console type: po companiesData[0].sheets
  7. see that this prints out an empty array and isn’t properly mapping the data to the swift class STSheet

Hello Steven,

We can reproduce this issue. The internal ticket BKNDLSS-19679 created. We’ll fixed it and reply here as soon as possible.

Regards,
Olha

Hello Steven,

Issue has been fixed.
Please update to v5.5.4 and verify whether it works now.

Regards,
Olha