如何维护一个可以在与另一个表的关系之外编辑的CoreData表?

时间:2010-12-04 07:05:19

标签: iphone core-data contacts relationships

假设我有一个名为“Event”的表,它与表“Group”有很多关系,表与“Person”表有很多关系。

可以创建许多可以引用同一个人的组。

我还没有添加从“Person”到“Group”的反向关系,因为如果删除了“Group”,我不希望删除关联的“Person”,因为它可能会被引用到其他地方。

我应该忽略反向关系吗?文档强烈建议不要这样做,但我认为这很多都是正确的方法。

感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

除非你有充分的理由不这样做,否则总是有反向关系。它有助于CoreData维护对象图的完整性。关系的默认删除规则是“Nullify”,听起来像你想要的。 “Nullify”表示如果删除此对象,则此关系另一端的关系属性将被填空(对于一对一关系)或从集合中删除值(对于多对多关系)。实际删除关系另一端的唯一方法是更改​​删除规则以指定它。

tl; dr :使用反向关系,将删除规则保留为默认值“Nullify”。