我想知道是否可以保存和恢复CoreData实体的keyPaths的观察者。
示例:我的managedObjectContext中有300个Employees。当我第一次为所有这些调用addObserver:..时插入它们,以便在someValue发生更改时通知某些Object。
现在我正在调用saveAction:保存。我关闭了应用程序。当我重新启动时,有什么方法可以恢复300 x addObserver?
感谢。 问候。
编辑:Aka,在取消归档CoreData实体时添加观察者的最佳方法是什么?模型类中的自定义init()?只需在for循环中获取Employee的所有实体,然后在它们上调用addObserver?答案 0 :(得分:2)
这样做的最好方法似乎是为您的Employee实体创建子类NSManagedObject并覆盖awakeFromFetch和awakeFromInsert方法。首次插入实体时会调用awakeFromInsert,因此您可以移动现有代码以将观察者添加到那里。 awakeFromFetch是您在获取时添加观察者的地方。