【发布时间】:2013-11-29 23:46:09
【问题描述】:
我有以下实体和关系:
实体0, 实体A, 实体B, 实体C
Entity0 可以有 0 个或多个 EntityA。 EntityA 与 EntityB 具有一对一的关系“entityB”(相反是“itemB”)。 EntityC 与 EntityB 具有多对多关系“entityBs”(相反是“itemCs”)。 所有关系的删除规则都是“Nullify”。
我创建了一个 EntityA 并将一个 EntityB 绑定到它。 然后我创建了一个 EntityC 并将该 EntityB 绑定到它。
在删除 EntityA 期间,我这样做...
self.entityA.entityB = nil;
[self.entity0 removeEntityAObject:self.entityA];
现在,我预计与 EntityC 相关的“entityBs”也会被删除。但是,当我尝试从 EntityC 获取“entityBs”的详细信息时
NSLog(@"details %@", self.entityC.entityBs);
我在第一次通话时收到此错误:
entityBs = "<relationship fault: 0x1557abb0 'entityBs'>";
然后我点击返回按钮并再次选择 EntityC 以再次检索详细信息。然后我得到了这个:
entityBs = (
"0x1669b8b0 <x-coredata://12REF41B-4A7D-4A51-B6BC-2RHRI5DC3124/EntityB/p22>"
);
status = 0;
}) with objects {(
<EntityB: 0x166ac100> (entity: EntityB; id: 0x1669b8b0 <x-coredata://12REF41B-4A7D-4A51-B6BC-2RHRI5DC3124/EntityB/p22> ; data: <fault>)
就好像实体 B 还在那里。 我应该如何正确执行删除?
【问题讨论】:
标签: ios core-data nsmanagedobject