Ich erhalte einen Fehler, wenn ich versuche, ein Array zu speichern, das aus einer JSON-Zeichenfolge stammt. Ich habe versucht, RLMArray
ohne Erfolg zu verwenden.Wie behalte ich ein Array mit Realm Swift und ObjectMapper?
Der Fehler, den ich erhalten ist:
'RLMException', Grund: ‚Eigentum 'Seite' ist vom Typ 'RLMArray < (null)>', das keinen RLMArray Objekttyp unterstützt wird.
Meine Modellklasse:
public class Project: Object, Mappable {
dynamic var id = 0
dynamic var user: User!
dynamic var page: RLMArray!
dynamic var error_message: String! = ""
dynamic var status: String! = ""
override public static func primaryKey() -> String? {
return "id"
}
required convenience public init?(_ map: Map) {
self.init()
mapping(map)
}
public func mapping(map: Map) {
user <- map["user"]
page <- map["page"]
error_message <- map["error_message"]
status <- map["status"]
}
}
JSON-Datei:
let parameters = [
"user": [
"username": "Marcus",
"password": "123asd"
],
"page": [
"home": [
[
"kind": "navigation",
"title": "suite",
"image": "ic_suite",
"backgroundImage": "ic_background1"
],
[
"kind": "navigation",
"title": "jardim",
"image": "ic_jardim",
"backgroundImage": "ic_background2"
]
],
"suite": [
[
"kind": "button",
"title": "My Master Suite",
"textColor": "0x000000",
"textSize": "16"
]
]
],
"status": "success",
"error_message": ""
]
self.project = Mapper<Project>().map(parameters)
Ich versuchte Liste zu verwenden, aber bekam: Eigenschaft nicht dynamisch markiert werden kann, weil seine Art nicht in Objective-C dargestellt werden kann –
Marckaraujo
'Liste' Eigenschaften als 'lassen property = Liste ()' erklärt werden sollten. Weitere Informationen finden Sie in [Realms Deklaration der Eigentumsdeklaration] (https://realm.io/docs/swift/latest/#cheatsheet). –
bdash
Danke @bdash, aber ich kann nicht verwenden Liste(), wenn Sie gesehen haben, meine ArrayList haben verschiedene Arten von Objekten. –
Marckaraujo