当我尝试保存来自JSON字符串的数组时出现错误。我试图使用RLMArray
但没有成功。
我收到的错误是:
'RLMException',原因:'属性'页面'的类型为'RLMArray<(null)>'这不是受支持的RLMArray对象类型。
我的模特课:
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文件:
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)
答案 0 :(得分:1)
您的类继承自Realm Swift的基类Object
,但尝试在其接口中使用Realm Objective-C类型RLMArray
。你不能以这种方式混合Realm Swift和Realm Objective-C。使用Realm Swift时,应该使用List<T>
作为数组属性。