按照显示的示例代码:
// Define your models like regular Swift classes
class Dog: Object {
dynamic var name = ""
dynamic var age = 0
}
class Person: Object {
dynamic var name = ""
dynamic var picture: NSData? = nil // optionals supported
let dogs = List<Dog>()
}
// Use them like regular Swift objects
let myperson = Person()
let mydog = Dog()
mydog.name = "Rex"
myperson.dogs.append(mydog)
// Persist your data easily
let realm = try! Realm()
try! realm.write {
// do I need to add this statement??
realm.add(mydog)
realm.add(myperson)
}
我是否还需要持久保存mydog对象,或者Realm足够聪明,知道它是myperson的一个新的子对象,它会为我保留它吗?
答案 0 :(得分:2)
如果您已经持久保存包含它的对象,则不需要保留实际的dog对象。
答案 1 :(得分:1)
对于想知道级联删除的用户,答案是NO
。
Realm支持级联写入,但NOT
删除。对于删除,您可能需要查询所有关系并逐个删除。