轻量级数据迁移

Posted

技术标签:

【中文标题】轻量级数据迁移【英文标题】:Lightweight data migration 【发布时间】:2015-12-10 16:02:10 【问题描述】:

在进行更新并开始更新我的数据模型时,我非常着急。现在我意识到我应该创建一个新的 xcdatamodel 并开始更新它,同时仍然拥有旧的。

所以我的问题是。现在最好的做法是什么?创建一个新的 xcdatamodel 并返回源代码管理以使一个与当前版本相同,而一个是更新的版本?

我是核心数据迁移的新手,因此不胜感激。

【问题讨论】:

【参考方案1】:
    将“新”模型复制到新文件(或重命名) 从源代码管理中恢复原始模型 将“当前”模型指向新模型文件。

这些都位于xcdatamodeld 目录中。

【讨论】:

我还更新了实体类以包含新属性。我需要同时引用它们还是只引用 xcdatamodel? 类内部的更改不会影响迁移。所以只是实际 xcdatamodel 内部的更改是一个问题。

以上是关于轻量级数据迁移的主要内容,如果未能解决你的问题,请参考以下文章

轻量级迁移核心数据

轻量级核心数据迁移后崩溃

iOS 核心数据轻量级迁移

核心数据轻量级迁移属性重命名

考虑使用 Core Data 轻量级迁移的多个数据模型版本

轻量级数据库迁移是不是与后台应用程序一起运行?