私は公式のバックエンドレスドキュメントでオンラインで見つかったfuncを使ってオンラインデータストレージからデータを取得しようとしています!しかし、私がPersonaをLista(私自身のクラス)Objectのように使用しようとすると、エラーが発生します: '__NSDictionaryM'(0x10c1ccfc0)型の値を 'InLIsta_.Lista'(0x108439790)にキャストできませんでした。 私はこのサイトで検索しましたが、答えはバックエンドレスのケースに限定されていませんので、誰でも助けてくれることを願っています。SwiftのBackendlessでカスタムモデルクラスを使用する
これは私のコードです(明らかにすべてのvarを宣言し、 )を実行します。
class Lista : NSObject {
var nome: String?
var pr: String?
var pagamento = 0
var entrato: Bool = false
var commenti: String?
var objectId: String?
var created: NSDate?
var updated: NSDate?
}
func findQ() {
Types.tryblock({() -> Void in
let startTime = NSDate()
let found = self.backendless.persistenceService.of(Lista.ofClass()).find(self.query)
let currentPage = found.getCurrentPage()
print("Loaded \(currentPage.count) name objects")
print("Total name in the Backendless storage - \(found.totalObjects)")
for person in currentPage {
let persona = person as! Lista // here i get error
print("Restaurant <\(Lista.ofClass())> name = \(persona.nome)")
self.nomi.append(persona.nome!)
}
print("Total time (ms) - \(1000*NSDate().timeIntervalSinceDate(startTime))")
},
catchblock: { (exception) -> Void in
print("Server reported an error: \(exception as! Fault)")
}
)
}
明らかに、 'currentPage'は' Lista'オブジェクトではなく辞書の配列です – vadian
カスタムクラスを登録しましたか? – Wain
はいwain私はバックエンドレスのドキュメントで説明したような私のカスタムクラスを登録しました。実際にはストレージにデータを正しく保存できますが、取得できます。だから私はそれを修正することができますどのようにvadian? –