我试过RealmSwift。
我保存了我的模特。 但RealmSwift不支持Array,Dic ...... 我该怎么办?
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...
}
...
}
答案 0 :(得分:1)
数组通常表示为List<T>
。这允许在Realm中处理many-to-many
关系。
Realm不支持字典。但它可以通过2个类和多个关系来实现。例如:
class User: Object {
dynamic var name = ""
let stackOverflowQuestions = List<Question>()
}
class Question: Object {
dynamic var title = ""
dynamic var message = ""
// etc.
}
答案 1 :(得分:0)
List是Realm中用于定义多对多关系的容器类型。 与Swift的Array类似,List是一种泛型类型,它根据它存储的Object类型进行参数化。
如果你想通过Realm 使用数组,那么
var userMachines = List<Machine>()
如果您想在Realm中保存数据后再次将其用作数组 使用
func fetchRealmMachine() -> [Machine]{
let realm = try! Realm()
let realmMachines = realm.object(ofType: UserSession.self)?.userMachines
return Array(realmMachines!)
}
结果将以数组
的形式返回