我在我的模型对象上下文(MOC)中插入一个新的Folder实体,它是主MOC的子代。保存之前,[[newFolder objectID] isTemporaryId]返回YES。当我首先保存我的MOC然后保存主MOC并询问[[newFolder objectID] isTemporaryId]时,它再次显示YES。我希望它现在是一个持久化对象,事实上,如果我询问SQLite文件,它包含新文件夹。在我运行的应用程序的整个时间,它会说YES。在我退出并重新启动之前,从商店加载对象,是否说不。
我一直以为NSManagedObject从临时对象变为存储对象,在保存时不再是临时对象ID。对象何时获得非临时的objectID?
干杯
的Nik
答案 0 :(得分:13)
在刷新对象之前,父上下文中的更改不会更改子上下文中的对象。保存父上下文后刷新对象也许可以解决问题。
如果这不起作用,则总是-[NSManagedObjectContext obtainPermanentIDsForObjects:error:]
。