我在這裏有一個奇怪的問題。我沒有得到對我的NSManagedObject的「更新」操作的回調,但是插入或移出該實體類型集合的任何對象都會觸發委託回調。Restkit + Coredata - NSFetchedResultsControllerDelegate回調沒有爲更新操作單獨觸發
之前我的問題進一步進行,我想告訴我的設置:
NSFetchedResultsController的配置是否正確。確信 所要求的這款蘋果 文件正在被外部修改的屬性沒有任何的fetchedResultsController的 排序鍵:
當一個對象的狀態,但改變 的最新情況報道屬性不是排序鍵的一部分。
只有一個託管對象上下文中發生這些修改。
由於插入和刪除操作被報告給 委託,我相信有有鬼更新 操作
我鑽下來Restkit代碼RKLogs的幫助,看看恰好映射發生和coredata對象正在更新,以找出沒有得到更新委託回調的原因。
在類RKManagedObjectMappingOperation
-performMapping方法,布雷克·沃特斯先生記錄了爲什麼MOC回調不更新時觸發的原因:
- (BOOL)performMapping:(NSError **)error
{
BOOL success = [super performMapping:error];
if ([self.objectMapping isKindOfClass:[RKManagedObjectMapping class]]) {
/**
NOTE: Processing the pending changes here ensures that the managed object context generates observable
callbacks that are important for maintaining any sort of cache that is consistent within a single
object mapping operation. As the MOC is only saved when the aggregate operation is processed, we must
manually invoke processPendingChanges to prevent recreating objects with the same primary key.
See https://github.com/RestKit/RestKit/issues/661
*/
[self connectRelationships];
}
return success;
}
但我不能爲自己的生活搞不清楚如何解決這一問題?因爲它有目的地完成了嗎?
有沒有人遇到同樣的問題?我如何解決它?
感謝, 拉吉爬完