抽象实体的核心数据关系

时间:2012-06-25 15:37:18

标签: ios core-data

当一个实体设置为抽象时,在两个实体之间创建一对一的关系是否合法?

2 个答案:

答案 0 :(得分:3)

抽象实体并不意味着实例化。这就是你 不能 创建这种关系的原因。你可以做的是创建一个实体(s)从抽象实体继承的关系。

来自Apple's docs

  

关系指定实体或父实体   目的地的物体。这可以与实体相同   来源(反身关系)。关系不一定是   同质。如果Employee实体有两个子实体,比如Manager   和Flunky,然后给定部门的员工可能组成   员工(假设员工不是抽象实体),经理,   Flunkies,或其任何组合。

修改 显然你可以创建这样的关系(这样子实体也可以继承关系)......

  

如果您定义实体继承层次结构(请参阅“实体   继承“),指定一个超级实体作为一个实体   获取请求,请求返回所有匹配的实例   超实体和子实体。在某些应用程序中,您可能会   将超级实体指定为抽象(请参阅“抽象实体”)。至   获取抽象的所有具体子实体的匹配实例   实体,您将获取规范的实体设置为抽象   实体。对于“抽象实体”中描述的域的情况,如果   您使用Graphic实体指定获取请求,fetch返回   匹配Circle,TextArea和Line的实例。

另见答案:Core Data: Abstract Entity in Fetch Request

答案 1 :(得分:1)

是肯定的。你可以拥有一个拥有“东西”的人......