Emi*_*lDo 4 objective-c realm ios
我正在用伟大的 Realm 库重构我的应用程序,替换 CoreData。我面临的一个问题是缺乏级联删除,并且缺少关于如何以另一种方式完成这一重要步骤的任何好的建议。
我的模型可以描述为
Person - idx, <RLMarray Dogs>
Dog - idx, <RLMarray Walks>
Walk - distance, time
Run Code Online (Sandbox Code Playgroud)
删除 Person 及其所有相关的狗和 dog.walks 时的最佳做法是什么?
迭代所有?或者有没有其他方法可以获取子对象的引用?
现在,您需要自己遍历所有相关对象及其相关对象等,同时避免循环并且仅删除应该级联删除的关系上的对象。
这可以根据对象模型通过在每个涉及的对象上实现递归方法来实现,例如cascadeDelete,调用相关对象上的方法。删除对象本身必须始终是最后一步,否则对象将失效并且其关系不再可访问。
除此之外,知道有一种方法-\[RLMRealm deleteObjects:\]可以让您删除NSFastEnumeration实现集合的内容可能会有所帮助RLMArray和RLMResults。
| 归档时间: |
|
| 查看次数: |
3356 次 |
| 最近记录: |