更改实体属性类型后的核心数据迁移

时间:2015-09-04 00:02:43

标签: ios core-data core-data-migration

我有一个名为“Image”的Core Data实体。最初我打算用JPG格式保存图像,其中“image”属性是“Binary Data”类型。但是,我已经改变了主意,并将图像存储在我的应用程序的Documents目录中。我想在“image”属性中保存文件路径,但希望将类型更改为“string”。

我应该为此执行哪种类型的迁移?该应用程序仍在开发中 - 尚未上传到iTunesConnect而尚未上传到AppStore。

我如何处理我创建的NSManagedObject子类?我会把它丢弃并创建一个新的或者我可以进行某种调整吗?我是否需要将子类保留为数据模型的某种引用?

1 个答案:

答案 0 :(得分:0)

您只需迁移即可迁移现有数据。

您必须修改NSManagedObject子类。最简单的方法是创建一个新的NSManagedObject子类,并将与image属性相关的所有内容复制到旧的子类中。或者将您在旧子类中更改的所有内容复制到新的子类中。如果你没有改变任何东西,你可以替换子类。

迁移不使用任何子类。