3

我正在使用 xcode4.5 中的轻量级迁移进行 coredata 数据库迁移,当我将“NSInferMappingModelAutomaticallyOption”设置为“NO”时,我不断收到“找不到用于迁移的映射模型”。如果我将“NSInferMappingModelAutomaticallyOption”设置为“YES”,轻量级迁移将毫无问题地通过。

这是我遵循的步骤:

  1. 添加新模型版本 .xcdatamodelId
  2. 对实体进行更改(包括添加新实体)
  3. 选择较新版本的数据模型作为当前版本,生成新的 NSManagedObject 子类,并对代码进行相应的更改。
  4. 创建映射模型并使源指向旧数据模型版本,目标指向新数据模型版本
  5. 创建自定义迁移策略并将其与映射模型中的一个映射挂钩
  6. 设置“NSInferMappingModelAutomaticallyOption”等于“NO”的轻量级迁移。
  7. 使用来自旧版本的数据库在模拟器上测试迁移。

我遵循了关于苹果文档的所有步骤,并且在创建映射后没有对实体架构进行任何更改。我尝试清理 xcode 中的 DerivedData 文件夹,并且我检查了包含正确的“VersionInfo.plist”我的数据模型的版本。对于未更改的实体,它们的哈希键是匹配的。

但是,当我尝试进行迁移时,我仍然会收到此错误....现在很沮丧..任何人都可以帮助我解决这个问题吗?

4

0 回答 0