Magical Records核心数据迁移问题

时间:2014-12-11 10:19:26

标签: ios core-data database-migration magicalrecord

我使用魔法记录用线

设置CoreData
[MagicalRecord setupCoreDataStackWithStoreNamed:@"MyModel"];

现在处于应用程序的第2阶段

[MagicalRecord setupCoreDataStackWithAutoMigratingSqliteStoreNamed:@"MyModel 2"];

但会发生的是数据被清除。一切都从头开始:(我深深地讨厌请帮助。有人吗?

1 个答案:

答案 0 :(得分:2)

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

enter image description here

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

因此,请继续使用原始模型名称初始化Magical Record:[MagicalRecord setupCoreDataStackWithAutoMigratingSqliteStoreNamed:@"MyModel"];

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

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