gpt4 book ai didi

ios - 如何将实体上的属性迁移到Core Data中的实体

转载 作者:行者123 更新时间:2023-12-01 16:54:02 24 4
gpt4 key购买 nike

我正在为一个相当复杂的Core Data映射问题而苦苦挣扎,我似乎无法理解。基本上,我具有一个属性为字符串的托管对象版本。此字符串在许多对象中都是相同的。同样,我认为将其更改为具有属性“名称”的单个实体是有意义的。

entity.attribute应该成为entity.newObject.name,其中属性和名称都是字符串。

使事情复杂化的是,我希望当前已拆分为许多实体的属性成为实体的单个实例。此外,新实体应与属性与newObject.name匹配的对象建立一对多关系。

有什么办法可以通过在Core Data中映射模型来做到这一点?我知道自动迁移是不可能的。

我想从这里开始:

Diagram of current model

对此:

Diagram of wanted model

我这样做是为了加快在特定 session 中与特定拼图类型匹配的时间的获取请求。这种想法是,-[NSSet intersectSet]比将每个单独时间的puzzleType属性与字符串进行比较要快得多。我将如何通过映射模型或以编程方式做到这一点?

最佳答案

您可以使用自动迁移,只是无法自动推断映射。

高级任务将是:

  • 创建新的模型版本。
  • 根据需要配置新模型。
  • 将新模型版本设置为当前版本。
  • 创建一个从旧版本到新版本的映射模型,您将在其中将$ source.attributes映射到哪些新属性。
  • 在配置持久性存储协调器时,将NSInferMappingModelAutomaticallyOption选项设置为NO。
  • 将NSMigratePersistentStoresAutomaticallyOption选项保留为YES。仅当要使用迁移管理器显示迁移进度时,才将其设置为NO。

  • 让我知道您是否需要更深入的说明。

    关于ios - 如何将实体上的属性迁移到Core Data中的实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13467427/

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