使用两次反比关系?

时间:2011-11-24 09:14:41

标签: objective-c core-data foreign-keys relationship

我想知道我是否可以为两种不同的关系使用相同的反向关系两次?

以下是一个例子:

旅行

  • 原点(一对一关系)MapPoint(逆ReferencedBy)

  • 目标(一对一关系)MapPoint(逆ReferencedBy)

MapPoint

  • ReferencedBy(to-many relationship)Trip(这是问题,如何设置反转?)

1 个答案:

答案 0 :(得分:0)

不,你不能或不应该。我试过了它会导致混乱。

因此MapPoint应该有2个关系。

ReferencedByOrigin ReferencedByDestination

起初可能看起来很奇怪。但想一想。这种方法没有错。

另一种方法是从MapPoint到Origin和Destination之间建立一对多的关系并放置一个枚举。

这种方法更优雅,但实际上要复杂得多。

另一种方法是拥有2个Origin和Destination的子实体。

这个更优雅,但你仍然需要

ReferencedByOrigin
ReferencedByDestination

在MapPoint中。