https://backendless.com/feature-16-data-retrieval-api-how-to-load-objects-from-an-mbaas-storage/
При выполнение кода сервер возвращает NSMutubaleDictionary, есть ли возможность получения экземпляра класса NewsItem?
func fetchingFirstPage() {
var news = MainBEData.backendles.persistenceService.of(NewsItem.ofClass()).find(BackendlessDataQuery())
var currentPage = news.getCurrentPage()
println("Loaded \(currentPage.count) news objects")
println("Total news in the starage - \(news.totalObjects)")
for new in currentPage {
var pf = new as! NewsItem
println("NewsType = \(new.ObjectType)")
}
}
Метод getCurrentPage() класса BackendlessCollection возвращает массив AnyObject (“нетипизированных”) объектов - однако объекты в массиве безусловно имеют тип. Вот немного измененный метод fetchingFirstPage() из примера https://backendless.com/feature-16-data-retrieval-api-how-to-load-objects-from-an-mbaas-storage/, где в операторе for “типизировал” массив:
func fetchingFirstPageRestautants() {
Types.try({ () -> Void in
var query = BackendlessDataQuery()
var restaurants = self.backendless.persistenceService.of(Restaurant.ofClass()).find(query)
var currentPage = restaurants.getCurrentPage()
println("Loaded \(currentPage.count) restaurant objects")
println("Total restaurants in the Backendless starage - \(restaurants.totalObjects)")
for restaurant in currentPage as! [Restaurant] {
println("Restaurant <\(restaurant.ofClass())> name = \(restaurant.name), cuisine = \(restaurant.cuisine)")
}
},
catch: { (exception) -> Void in
println("Server reported an error: \(exception as! Fault)")
}
)
}
лог:
Loaded 20 restaurant objects
Total restaurants in the Backendless starage - 304
Restaurant <F16RetrievingDataSwift.Restaurant> name = Optional("TastyBaaS"), cuisine = Optional("mBaaS")
Restaurant <F16RetrievingDataSwift.Restaurant> name = Optional("TastyBaaS 298"), cuisine = Optional("mBaaS")
Restaurant <F16RetrievingDataSwift.Restaurant> name = Optional("TastyBaaS 299"), cuisine = Optional("mBaaS")
Как видно из лога, извлекаемые из массива объекты restaurant являются объектами типа Restaurant, и есть возможность работать с его properties и методами.