ZW2*_*652 3 arrays json realm swift
我是使用Realm的新手.有没有一种简单的方法将数组保存到领域对象?我从JSON REST调用接收数据:
class SomeClass: RLMObject {
dynamic var id = 0
dynamic var name = ""
dynamic var array: NSArray
func checkForUpdates() {
// Download JSON data here... The results have an array inside of them.
SomeClass.createOrUpdateInDefaultRealmWithObject(SomeNSDictionary)
}
override class func primaryKey() -> String! {
return "id"
}
}
Run Code Online (Sandbox Code Playgroud)
是否可以将数组保存在Realm中的JSON结果中?
谢谢.
Realm有一个特殊RLMArray类型,它允许存储RLMObject绑定到父级的集合RLMObject.例如,假设您有以下JSON:
{
"name": "John Doe",
"aliases": [
{"alias": "John"},
{"alias": "JD"}
]
}
Run Code Online (Sandbox Code Playgroud)
您可以使用以下类对此进行建模:
class Alias: RLMObject {
dynamic var alias = ""
}
class Person: RLMObject {
dynamic var name = ""
dynamic var aliases = RLMArray(objectClassName: "Alias")
}
Run Code Online (Sandbox Code Playgroud)
因此,您只需Person使用以下API调用创建对象:
Person.createInRealm(realm, withObject: jsonObject)
Run Code Online (Sandbox Code Playgroud)
您可以RLMArray从Realm的参考文档中了解更多有关工作方式的信息:http://realm.io/docs/cocoa/0.80.0/api/Classes/RLMArray.html