Magical Records CoreData 迁移问题

Posted

技术标签:

【中文标题】Magical Records CoreData 迁移问题【英文标题】:Magical Records CoreData migration issue 【发布时间】:2014-12-11 10:19:25 【问题描述】:

我使用 Magical Records 设置 CoreData

[MagicalRecord setupCoreDataStackWithStoreNamed:@"MyModel"];

现在在我正在做的应用程序的第 2 阶段

[MagicalRecord setupCoreDataStackWithAutoMigratingSqliteStoreNamed:@"MyModel 2"];

但是发生的情况是数据被清除了。一切从头开始:(我很麻烦请帮忙。有人吗?

【问题讨论】:

【参考方案1】:

当您对现有核心数据模型进行更改时,您必须添加新版本。

这并不意味着您的数据库名称已更改,所发生的只是您告诉 Core Data 已添加新版本,这就是自动迁移魔法可以开始的地方。这就是为什么你可以在 finder 中打开你的 .xcdatamodeld,显示包内容,然后你会看到你的两个版本。

所以继续用原来的模型名初始化Magical Record:[MagicalRecord setupCoreDataStackWithAutoMigratingSqliteStoreNamed:@"MyModel"];

您的文件检查器中的 MyModel.xcdatamodeld 2 旁边应该有一个绿色勾号:)

您还需要注意,如果 MagicalRecord 无法执行迁移,它将在调试模式下删除模型,因此请阅读lightweight migration guide,了解如何为轻量级迁移设置有效的模型更改

【讨论】:

是商店名称永远不会改变。我正在改变它。谢谢:)

以上是关于Magical Records CoreData 迁移问题的主要内容,如果未能解决你的问题,请参考以下文章

我正在尝试从 Magical Records 获取最新添加的数据

Magical Records:加载要在本地上下文中更新的记录

CoreData + Magical Record 运行选择查询

Magical Record - 使用 2 个模型 Coredata 或更多

Magical Record,CoreData,删除一条记录并重新编号

使用 Magical Record 将对象数组插入 Core Data