我正在为核心数据使用 UIManagedDocument。我的 managedObjectContext 中有日历对象,它们有一个calendarSelected
属性。Calendar 实体与 CalendarEntry 具有一对多关系。
当我更改它们的calendarSelected
属性然后执行 NSFetchRequest 以获取具有以下谓词的 CalendarEntry 对象时:
[NSPredicate predicateWithFormat:@"calendar.calendarSelected = YES"]
在没有我打电话的情况下,calendar.calendarSelected 似乎没有看到我所做的更改
[myManagedDocument saveToURL:myManagedDocument.fileURL forSaveOperation:UIDocumentSaveForOverwriting completionHandler:^(BOOL success) {}];
第一的。我在某处读到,即使更改尚未写入持久存储,从同一上下文中获取内容也应该尊重在该上下文中所做的更改。我错过了什么?
更新:
当 calendarEvents 关系出现故障时,它似乎正在发生:calendarEvents = "<relationship fault: 0x91aec90 'calendarEvents'>";
但在关系没有故障时起作用。