在 Core Data 中存储继承实体的正确方法是什么?
假设我有一个 Shape 实体,它(是|可以是)抽象和相应的 Shape 类。
形状有子实体/子类:圆形、矩形、三角形。
我需要将我所有的形状都放在 UITableView 中(可能在不同的部分,甚至没有)。
我应该如何存储所有这些形状?
- 作为 Shape 实体,然后在获取之后和添加到数据源数组之前将它们转换为具体的 Shape 子类
- 作为具体的形状实体,然后将它们全部提取并连接到一个数组中作为 UITableView 的数据源
我认为第一种方法是不可能的......
还有其他方法吗?
谢谢!
Best Answer-推荐答案 strong>
您需要将 shape 声明为抽象实体,并将您的 Circle 和其他人声明为 Shape 的子实体。当您执行获取时,您可以在您的 NSFetchRequest 对象上使用 setIncludesSubentities: 来获取 Shape 和所有子实体(如果这是您想要做的,将它们放在一个数组中)。
关于ios - 核心数据 : Inherited entities,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/16005011/
|