在核心数据中嵌套问题

时间:2014-01-25 12:57:57

标签: ios iphone database core-data categories

我创建了一个数据库,我必须在其中存储各种类别的联系人。当我必须在类别中创建子类别时会出现问题: -

类别 - >            子类别 - >                           联系人

但类别也可以有像

这样的联系人

类别 - >联系人

子类别也可以有联系人。我认为将使用核心数据中的嵌套。我怎样才能实现这种关系?如何将子类别保存到类别中,即使它们属于同一个实体?

我在这里附加了我的核心数据实体关系模型: -

enter image description here

1 个答案:

答案 0 :(得分:1)

在CoreDate中创建“自我”引用关系没有问题 换句话说,一个实体可能有自己的关系。

CategorySubCategory之间唯一的区别在于parent实体的存在。
因此,无需为该部分定义新实体。

您可以简单地定义关系:

Categoryparent Category类型(在这种情况下说一对一)

和反向关系:

CategorysubCategories类型NSSet(在本例中为to-many),包含Category个对象。

您可以在界面构建器中设置所有内容。

现在,由于CategoryContact有关系,所以所有“子类别”都会有这种关系。

如果您希望“子类别”具有其他属性,只需创建一个新实体,使其从Category实体继承(保持上述设置)。
并添加新属性。