【问题标题】:Core data: How to structure a data model with a parent entity核心数据:如何用父实体构建数据模型
【发布时间】:2011-10-31 20:50:34
【问题描述】:

我是一个长期倾听者,但第一次来这里……希望你能帮助我解决一个核心数据问题!

我正在为 iPad 创建一个自定义业务应用程序,允许用户填写其业务中常用的合同。有四个合同,每个合同的数据字段在 20 到 40 个之间,并且它们都有很大的不同,但是有几个 (3-4) 字段对所有四个都是通用的,例如创建日期和供应商名称等。

我需要在 UITableView 中一起显示所有合同(分组样式以显示不同的类型),并且我需要能够选择一个单元格并显示一个详细视图,以便用户可以查看和修改数据具体合同。

迄今为止,我的研究告诉我,我应该使用列出所有共同属性的父实体(实体 A),然后使用具有它们唯一的属性,并从实体 A 继承其余属性。

这是构建此数据模型的最佳方式吗?请记住,当我创建合同的新实例时,它需要是一个独立的对象,具有其所有属性以及父对象的属性。如果是这样,当我为我的 tableView 生成单元格时,我是获取实体 A 并希望其余的也一起出现,还是我为每种合约类型单独获取请求并以这种方式添加到表中?相反,如果我想创建一个新的合同实例(比如我的数据模型中的实体 B),我会怎么做?

我希望我已经解释得足够好。感谢您的帮助!

【问题讨论】:

    标签: ios core-data entity parent-child


    【解决方案1】:

    您应该使用您的公共字段创建一个抽象实体,并从那里继承您的不同合同类型。来自documentation

    在模型中,实体可以按继承层次排列,实体可以指定为抽象的。

    这还可以让您为所有合约定义通用行为,并在代码中使用抽象超类来引用任何合约。

    【讨论】:

    • 谢谢!这是我知识上的空白。很有魅力!
    猜你喜欢
    • 2011-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-08
    • 1970-01-01
    • 2013-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多