抽象实体的核心数据关系
当一个设置为抽象的时候,在两个实体之间创build一对一的关系是否合法?
是。 你可以拥有一个拥有“物”的人
抽象实体并不意味着被实例化。 这就是为什么你不能创造这样的关系。 你可以做的是创build一个关系,实体从一个抽象的实体inheritance。
从苹果的文档 :
关系指定目的地处的对象的实体或父实体。 这可以与来源的实体(反身关系)相同。 关系不一定是同质的。 如果员工实体有两个子实体,比如经理和Flunky,那么给定部门的员工可能由员工组成( 假设员工不是抽象实体 ),经理,媚俗或其任何组合。
编辑:显然你可以创build这样的关系(以便子实体也将inheritance关系)…
如果您定义了实体inheritance层次结构(请参阅“实体inheritance”),那么当您指定超实体作为获取请求的实体时,该请求会返回超实体和子实体的所有匹配实例。 在某些应用程序中,您可能指定超级实体为抽象(请参阅“抽象实体”)。 为了获取抽象实体的所有具体子实体的匹配实例,可以将用于提取规范的实体设置为抽象实体。 对于“抽象实体”中描述的域,如果您使用Graphic实体指定获取请求,则获取将返回Circle,TextArea和Line的匹配实例。
另请参阅此答案: 核心数据:提取请求中的抽象实体
- 如何在iOS 9.0 Beta中实现新的Core Data模型构build器的“独特”属性
- 我可以在一个应用程序中创build一个核心数据对象图,然后在另一个预设状态下使用它吗?
- 如何浏览在我的iPhone上运行的应用程序中的核心数据?
- Swift + CoreData:无法在NSManagedObject子类上设置Bool – Bug?
- 核心数据,NSNumber,整数32和整数64
- 从实体A的给定实例获得实体B的所有实例的总和
- NSFetchedResultsController在每个字母中有单独的部分标题的AZ索引?
- RestKit:为外键关系创build存根
- 创build单独的NSManagedObjectContext时出错