如何在Coredata中存储自定义结构数组[关闭]
Posted
技术标签:
【中文标题】如何在Coredata中存储自定义结构数组[关闭]【英文标题】:How to store array of custom structs in Coredata [closed] 【发布时间】:2021-06-21 17:41:51 【问题描述】:我试图弄清楚如何快速存储我在 Coredata 中定义的结构数组。根据我的研究,我认为我需要使用可转换属性,但我还没有找到关于如何做到这一点的可靠指南,而且我对 swift 还很陌生,所以我无法弄清楚出去。
我实际上并不确定在 Coredata 中存储一个数组是否正是我想要做的,所以我将解释我的目标。我正在创建一个应用程序来计时魔方解决。该应用程序允许用户创建具有名称和时间列表的“实例”,以便他们可以将应用程序用于多个谜题并保持时间分开。所以我有一个带有名称、拼图等的 Instance 结构,以及一个存储时间和有关特定解决方案的其他信息的 Solve 结构。 Instance 结构包含一个 Solves 数组。
我正在尝试将其移至 Coredata,因此我现在有一个具有 Instance Struct 具有的属性的 Instance 实体,并且我想在其中存储一个 Solves 数组。所以我想知道我将如何做到这一点,或者我是否应该采取更好的方法。
谢谢!
【问题讨论】:
Core Data 中通常的方式是第二个实体和一对多关系。无法在谓词中处理可转换的属性。 【参考方案1】:听起来您应该在 CoreData 模型中创建一个 Solve 实体,然后在链接到您的 Solve 实体的 Instance 实体(例如,名为“solves”)上创建一个 To Many
关系。这意味着每个实例都有一组关联的 Solve 实体。
这里有更多关于创建 CoreData 关系的信息:https://developer.apple.com/documentation/coredata/modeling_data/configuring_relationships
【讨论】:
以上是关于如何在Coredata中存储自定义结构数组[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何将 NSMutable 数组中的数据存储在 Core Data 中?