核心数据迁移如何适用于两个项目?

时间:2015-03-02 05:21:11

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

我正在使用核心数据的应用程序(一个应用程序已在AppStore上运行)。好的,现在我想让它完全适用于iOS8,客户端也要求我对UI及其结构做出很好的改变,所以我开始了一个全新的项目并决定自己编写代码。一切正常,然后客户通过电子邮件发送给我并确认,新版本的应用程序应该存储&如果现有应用程序将获得更新,则从数据库中获取现有值。我在这里感觉很糟糕

我知道核心数据迁移是可能的(我也阅读了this,但我脑子里有一些关于这个概念的故障。

  • 正如我所说,我开始了一个新项目虽然可以添加新版本的模型吗?
  • 我们的实体和属性名称不相同。我按照我想要的方式命名。
  • 我们的型号名称相同。例如Somename.xcdatamodel
  • 我的应用将更新到AppStore上的现有应用。

如何将现有核心数据库迁移到新核心数据库?

  • 这可能吗?怎么样?

对此有任何建议和帮助将不胜感激。

注意: 我读了这个问题,Core Data Migration: How to delete the Core Data stack?并发现如果我删除以前的模型没有问题?你的建议是什么?

1 个答案:

答案 0 :(得分:0)

如果您需要迁移并保留现有数据,则应阅读有关编写自定义策略Core Data Versioning Guide的更多信息。完整阅读本指南,了解您的应用迁移属于哪个类别。 1.轻量级迁移。 2.或者你必须编写自己的自定义政策。

据我所知,您提供的详细信息看起来可能是轻量级迁移,您无需执行任何操作,只需向xcdatamodel和映射模型添加新版本即可。如果没有,那么你必须编写自己的自定义策略和映射模型。

还要确保正确测试升级。