我正在尝试在iPhone应用程序中使用两个不同的核心数据模型,我创建并正确设置了第一个使用SQLite作为持久对象存储的核心数据模型。这个效果很好,预先填充的默认存储在表视图中正确加载。

现在,我想使用不同的预先填充的SQLITE默认存储器创建一个不同的核心数据模型,以将其加载到同一iPhone应用程序中的其他表视图中。我该如何完成这项任务?我阅读了核心数据文档并下载了示例代码,但我没有找到有关此任务的任何内容。

任何可用于解决此问题的示例代码将不胜感激。

提前谢谢你,码头

有帮助吗?

解决方案

您可以两种不同的方法:

  • 您可以设置一个单独的整个核心数据堆栈,实际上只需复制AppDelegate中已经拥有的模板代码即可。

  • 您可以将第二个核心数据sqlite文件添加到现有的核心数据堆栈中。这将使您在同一堆栈中访问两个实体(不是表格,这是对象图不是数据库)。为此,您添加了第二个 -addPersistentStore... 打电话给你 -persistentStoreCoordinator 方法并确保您的 -managedObjectModel 方法是在捆绑包中合并模型。

更新

将其设置为您想要的任何地方。您可以在AppDelegate中进行设置,然后进行依赖注入,然后将第二个堆栈推向需要参考的任何人。

通常我会的 不是UIViewController 因为这不是其责任。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top