gpt4 book ai didi

iphone - 如何在 Objective-C 中动态创建实体?

转载 作者:行者123 更新时间:2023-12-03 19:42:25 24 4
gpt4 key购买 nike

我正在构建一个 iPad 应用程序,我需要用户动态创建实体。我已经拥有程序使用的 3 个实体。
您能帮我编写代码吗?

我想根据我的理解了解整个结构,我必须创建新的 ManagedObjectModel,添加新实体,然后将其与现有实体合并,这是正确的吗?

最佳答案

虽然在实践中可以动态创建新实体和新模型,但这非常复杂。如果不出意外,您将必须将任何现有的持久数据迁移到新模型和新的持久存储文件。我强烈建议不要尝试此操作,特别是如果您刚刚开始使用核心数据。

你确实有选择:

首先,您确定您确实需要一个新实体吗?刚开始使用 Core Data 的人经常将实体误认为是托管对象。实体之于托管对象就像类之于实例。实体是用于创建对象图的抽象。它们实际上并不包含数据。需要新实体的时候是非常非常罕见的。

其次,如果您确实需要某种动态实体,通常最好将动态实体分解为众多固定的子实体,然后使用关系来创建虚拟实体。例如。您需要一个动态的“人”“实体”,因此您在模型中创建了多个实体,每个实体都包含该人的一个属性。您可以有一个 Field 实体,该实体将具有 fieldName 属性,然后是 fieldValue 属性。然后有一个实际的 Person 实体,它没有属性,只有与必要的 Field 对象的关系。您可以添加任何人所需的任何字段,然后通过遍历其字段的关系来重新构建虚拟人对象。

但是我相当怀疑您是否需要这种灵 active 。这种需求是非常罕见的。我会退后一步,看看您认为用户可能需要输入哪些动态数据。

关于iphone - 如何在 Objective-C 中动态创建实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4314670/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com