我的应用中有一个搜索栏和一些过滤器,它们创建了两个谓词。一个用于搜索栏中的字符串,一个用于过滤器 ( UISegmentedControl
)。
当使用谓词时,我将一个对象插入上下文,然后调用-save:
应用程序崩溃:
CoreData: error: Serious application error. Exception was caught during Core Data change processing. This is usually a bug within an observer of NSManagedObjectContextObjectsDidChangeNotification. Can't use in/contains operator with collection 1379410732 (not a collection) with userInfo (null)
在保存点:
不使用谓词时不会发生这种情况。我可以在保存过程中以某种方式删除谓词吗?我已经通过获取 进行了尝试NSFetchRequest
,但是我无法将其设置回控制器。
编辑
我还尝试添加self
为观察者NSManagedObjectContextDidSaveNotification
,然后使用-mergeChangesFromContextDidSaveNotification:
关于 SO 建议的讨论。这也没有帮助。