OGeek|极客世界-中国程序员成长平台

标题: ios - 核心数据 : Inherited entities [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 02:12
标题: ios - 核心数据 : Inherited entities

在 Core Data 中存储继承实体的正确方法是什么? 假设我有一个 Shape 实体,它(是|可以是)抽象和相应的 Shape 类。 形状有子实体/子类:圆形、矩形、三角形。

我需要将我所有的形状都放在 UITableView 中(可能在不同的部分,甚至没有)。

我应该如何存储所有这些形状?

  1. 作为 Shape 实体,然后在获取之后和添加到数据源数组之前将它们转换为具体的 Shape 子类
  2. 作为具体的形状实体,然后将它们全部提取并连接到一个数组中作为 UITableView 的数据源

我认为第一种方法是不可能的......

还有其他方法吗?

谢谢!



Best Answer-推荐答案


您需要将 shape 声明为抽象实体,并将您的 Circle 和其他人声明为 Shape 的子实体。当您执行获取时,您可以在您的 NSFetchRequest 对象上使用 setIncludesSubentities: 来获取 Shape 和所有子实体(如果这是您想要做的,将它们放在一个数组中)。

关于ios - 核心数据 : Inherited entities,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16005011/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4