NSManagedObject - 关系错误

时间:2013-08-31 07:00:39

标签: ios core-data entity-relationship fault

我有两个相关的实体(E1,E2)具有一对多的关系 E1< --->> E2 (关系名称:图片

E1还有一对多具有不同实体(E3,E4)的其他关系

当我从coredata E1.pictures结果中检索E1时:

pictures = "<relationship fault: 0x1d5a8c60 'pictures'>";

现在,

  • 我知道这种消息不是错误:)
  • E1.pictures不是空的。
  • 当我保存新图片并提供刷新E1管理对象([E1.managedObjectContext refreshObject:E1 mergeChanges:YES];)时,E1.pictures会正确返回,我可以显示图像。
  • 我尝试使用refreshObject:E1之前进行计数,但它不起作用

我假设我正确地检索了对象。 我想知道在保存新图片之前有多少张图片有E1 并且显然显示图片(但没有图片计数...我不去任何地方)

我可能会遗漏一些东西吗?有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:2)

看看这个:Core Data Faulting and Uniquing

核心数据中的“错误”一词基本上只意味着尚未提取关系的对象。如果您访问pictures实例的E1属性,则会触发错误,您将看到E2对象。

另外,在Core Data对象上调用refresh会将它的关系设置回故障,这就是你看到它的原因。