我有一个看起来像这样的核心数据关系
项目A ->> 项目B
其中 itemA 有很多 itemB。我想使用一个获取的属性,该属性允许我获取与 itemA 关联的所有关联 itemB,这些 itemA 的 int32 状态属性设置为“2”。所以我在数据建模器中创建了一个获取的属性,它具有以下内容:
获取的属性:completedItem 谓词:状态 == 2 目的地:itemB
当我第一次尝试时,我拿回了物品,我认为这一切都很酷并且完成了,然后我注意到奇怪的行为,当我仔细观察时,它返回的物品与相关的 itemB 的实际数量无关一个 itemA 对象。更奇怪的是返回类型是 NSFaultingMutableArray。这是一个简单的例子
- ItemA 有 0 个 itemB
- 对 ItemB 的 NSSet 属性 ItemA 的过滤谓词搜索返回 0
- 获取的属性“completedItem”返回 4 的 ItemB
- 它返回的类型是 NSFaultingMutableArray
现在这在我的脑海里很奇怪,而且真的没有意义。有任何想法吗?
更新 1:
似乎此处列出的 fetched 属性获取了核心数据必须提供的与谓词匹配的所有ItemB 对象,即使它与相关的 ItemA 没有关联