在核心数据中,我们尝试确定自上次保存事件(关系中删除、添加或更新的对象)以来一对一和一对多关系中的增量。我们尝试使用NSManggedObjectContext方法updatedObjects,但它只返回有关已更改属性的信息,而没有有关已更改关系的信息。我们搜索了 Apple 文档和其他来源,并考虑编写自定义托管对象访问器方法,但发现这是非常不鼓励的。
找出 NSManagedObject 关系中增量的最佳方法是什么?
请您参考如下方法:
updatedObjects
应返回对象图中发生更改的所有对象。您只需要确保:
- 您正在使用相同的托管对象上下文,并且
- 更改尚未保存。
- 您已将要观察的对象添加到上下文的
registeredObjects
您可以完成最后一点,例如通过获取您感兴趣的实体的所有实例。
请注意,您还可以使用 NSManagedObjectContextObjectsDidChangeNotification
对对象图中的更改使用react。