核心数据:如何保存以编程方式创建的对象数据模型

Posted

技术标签:

【中文标题】核心数据:如何保存以编程方式创建的对象数据模型【英文标题】:core data: how to save programmatically created object data model 【发布时间】:2012-01-04 13:09:04 【问题描述】:

在我的应用程序中,我在第一次启动时动态创建了数据模型。有没有办法保存此数据模型,以便我可以在后续应用启动时访问此模型(例如作为 *.momd 文件)?

【问题讨论】:

我很好奇:为什么需要在启动时创建数据模型? 【参考方案1】:

doesn't look 就像有一种方法可以将您的模型保存到 .momd 文件中,但是 NSManagedObjectModel 确实实现了<NSCoding>,因此您可以使用 NSArchiver / NSUarchiver 将模型写入一个文件,稍后再读回来。

【讨论】:

【参考方案2】:

执行此操作的最佳方法是从不同的持久存储加载默认数据集。

只需从捆绑持久存储中加载第一个图形,将对象复制到文档持久存储并保存。

您可能会在这里找到更多灵感:http://www.raywenderlich.com/980/core-data-tutorial-how-to-preloadimport-existing-data

【讨论】:

这对于实际的 data 来说会很好,但我理解问题是关于保存和加载 model(即哪些实体、属性并且存在关系)。不过,我可能是错的......

以上是关于核心数据:如何保存以编程方式创建的对象数据模型的主要内容,如果未能解决你的问题,请参考以下文章

核心数据模型对象保存的最佳实践

以编程方式更改核心数据文件中的数据

如何在以编程方式创建实体时设置 NSManagedObjectModel 的配置。

以编程方式检查核心数据实体是不是被索引

核心数据:创建多个托管对象,但只保存一些?

以编程方式添加到核心数据实体(如 IB 绑定“添加”)