在Core Data中建模树结构

时间:2013-05-19 10:59:31

标签: ios uitableview core-data

我想使用核心数据实现多路树。我的核心数据模型中有一个“计划”实体。

            Plan
           /  |  \
        Plan Plan Plan
     /  | \   |     |   \
   Plan Plan ...

上级计划将与子计划有很多关系。

那我应该如何设定关系呢?

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:13)

我会定义

  • 计划实体到自身的 to-many 关系subplans(或children),并将“删除规则”设置为“级联”,
  • 计划实体到自身的到一个关系superplan(或parent),并将“删除规则”设置为“抵消”,
  • 并将它们设置为彼此的反向关系。

如果删除一个计划对象,则自动

  • 由于“级联”删除规则和
  • ,所有子计划都将被删除
  • 由于“Nullify”删除规则,计划将从其父对象中删除。