2013-05-19 59 views
6

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

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

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

那么我应该如何设置关系?

enter image description here

enter image description here

回答

13

我会定义

  • 一个一对多计划实体本身关系subplans(或children),与 “删除规则”设置为“级联”,
  • a 一对一关系superplan(或parent)从计划实体本身,用“删除规则”设置为“抵消”,
  • 和设置这些彼此的逆关系。

如果你删除一个计划对象,然后自动

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

这是一个很好的答案! –