添加属性到多对多的关系?

我一直在使用核心数据build模我的数据库。 我有两个在许多关系中的实体。 每个人可以有很多地址,每个地址上可以有多个人住。

现在我想添加属性到这个关系。 比如一个人的地址会有标签在家里,其他人的地址会有标签的妈妈的地方。

我不能在地址实体上添加这个属性,因为相同的地址对不同的人有不同的标签。

既然关系是像NSSet一样build模的,我没有办法做到我想要的。

这可以以某种方式完成?

无法直接将属性添加到多关系中。 Apple推荐的方法(请参阅“ CoreData编程指南”中的“基于其语义build模关系 ”)是将多对多关系replace为添加属性的中间实体。 您现有的每个实体都将与新实体有一对多的关系。

就你而言,你可能有这样的事情:

 Person <--->> PersonAddressDetails <<---> Address 

然后,您可以将label属性添加到PersonAddressDetails实体。