如何在RealmSwift中使用数组或字典?
我真的很累 我保存了我的模型。 但RealmSwift不支持阵列、Dic。。。 我能做什么如何在RealmSwift中使用数组或字典?,swift,realm,realm-mobile-platform,Swift,Realm,Realm Mobile Platform,我真的很累 我保存了我的模型。 但RealmSwift不支持阵列、Dic。。。 我能做什么 import Foundation import RealmSwift class DumbData: Object { @objc dynamic var myModel: [[String: String]]! } class ViewController: UIViewController { ... let data = DumbData() data.myM
import Foundation
import RealmSwift
class DumbData: Object {
@objc dynamic var myModel: [[String: String]]!
}
class ViewController: UIViewController {
...
let data = DumbData()
data.myModel = [["asdf": "1234"]]
let realm = try! Reaml()
try realm.write {
realm.add(data) // error. Realm Does not support Array, Dic...
}
...
}
数组通常表示为。这允许处理领域中的关系 域不支持字典。但它可以通过两个类和多个关系来实现。例如:
class User: Object {
dynamic var name = ""
let stackOverflowQuestions = List<Question>()
}
class Question: Object {
dynamic var title = ""
dynamic var message = ""
// etc.
}
class用户:对象{
动态变量名称=“”
让stackOverflowQuestions=List()
}
课堂提问:对象{
动态变量title=“”
动态var message=“”
//等等。
}
列表是域中用于定义多个关系的容器类型。
与Swift的数组一样,List是一种泛型类型,它根据存储的对象类型进行参数化
如果您想通过领域使用数组,请执行此操作
var userMachines = List<Machine>()
结果将作为数组返回
func fetchRealmMachine() -> [Machine]{
let realm = try! Realm()
let realmMachines = realm.object(ofType: UserSession.self)?.userMachines
return Array(realmMachines!)
}