在我为某些实体中的某些属性更改类型后,如何迁移核心数据模型?

时间:2015-10-29 13:10:02

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

好的,我有6个实体:WLCommentWLItemWLPortalWLSponsorWLUserWLWishlist。它们中的每一个都具有整数16 类型的属性:标识符。现在我需要将每个实体的该属性的类型更改为整数32

  • 我知道我需要迁移
  • 我知道我无法使用轻量级迁移,因为此类迁移不允许更改类型

这是我在AppDelegate.swift中设置核心数据堆栈的方式:

MagicalRecord.setupCoreDataStack()

我现在该怎么办?

1 个答案:

答案 0 :(得分:1)

假设您已拥有的数据模型版本为Version 1。我想你应该:

  1. 创建新版本的数据模型,例如Version 2。将arrtibute identifier设置为Integer 16
  2. 类型
  3. Version 2设置为当前模型版本
  4. Version 1创建Version 2的映射模型。
  5. 请勿使用MagicalRecored.setupCoreDataStack()。相反,请改用setupAutoMigratingCoreDataStack()