gpt4 book ai didi

ios - 实现级联删除的Realm最佳实践

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:38:24 24 4
gpt4 key购买 nike

我正在用很棒的 Realm 库重构我的应用程序,替换 CoreData。我面临的一个问题是缺少级联删除,并且缺少关于如何以另一种方式执行这一重要步骤的任何好的建议。

我的模型可以描述为

Person - idx, <RLMarray Dogs>
Dog - idx, <RLMarray Walks>
Walk - distance, time

删除 Person 及其所有相关的 dogs 和 dog.walks 时的最佳做法是什么?

遍历所有 ?或者是否有任何其他方法可用于获取子对象的引用?

最佳答案

目前,您需要自己遍历所有相关对象及其相关对象等等,同时避免循环,并且只删除应该级联删除的关系上的对象。

这可以根据对象模型通过在每个涉及的对象上实现递归方法来实现,例如cascadeDelete,调用相关对象的方法。删除对象本身必须始终是最后一步,否则对象将失效并且其关系将无法再访问。

除此之外,知道有一个方法 -\[RLMRealm deleteObjects:\] 可能会有所帮助它允许您删除 NSFastEnumeration - 实现集合,其中包括 RLMArrayRLMResults

关于ios - 实现级联删除的Realm最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38140462/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com