Possible Duplicate:
Does every Core Data Relationship have to have an Inverse?
示例:如果我有两个实体 Person 和 Car,并且每个实体都应与一个 Image 实体链接 - 这会是什么样子?
现在,我只会创建三个实体:人、汽车、图像。因此人和汽车可以链接到图像实体。它们与 Image 实体具有 1:1 的关系。
但是现在,一位核心数据人员说关系必须以双向方式建模。这到底是傻还是不傻?那么我需要两个图像实体。汽车图像和人物图像。或者一个奇怪的 Image 实体有两种关系:一种与 Car 实体,一种与 Person 实体。
你会如何建模?
最佳答案
简短版本..
是的,关系需要以双向方式建模。不,这并不意味着您需要两个图像实体。如果一个人与一张图像存在单向关系,并且您删除了该图像(没有反向关系,因此对该人一无所知),那么您的图表现在已损坏。
因此您需要两种关系,但这并不意味着您需要两个图像实体。您的图像只需要一种关系 - “容器”,例如,可以是一个人或一辆汽车(共享的父实体会有所帮助)。
关于iphone - 我真的需要在核心数据中始终存在双向关系吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2974131/