Coredata轻量级迁移丢失了数据

时间:2019-08-21 06:56:30

标签: ios swift core-data

我不是coredata专家:(,

我遵循的步骤

  1. 创建新模态版本(编辑器->添加新模态版本)
  2. 选择当前模态版本(新添加的模态上显示绿色复选标记)
  3. 添加了String类型的新属性,具有可选类型
  4. 在AppDelegate中为NSPersistentContainer

    添加了以下代码
    let description = NSPersistentStoreDescription()
    description.shouldMigrateStoreAutomatically = true
    description.shouldInferMappingModelAutomatically = true
    container.persistentStoreDescriptions = [description]
    

    我的旧模态版本有很多记录,我也希望看到所有带有新模态的记录,但是当我只运行应用程序时,我看到所有数据都像空模型一样丢失了。

这是轻重量迁移的默认行为吗?还是我错过了某事

请指导

1 个答案:

答案 0 :(得分:1)

NSPersistentContainer默认启用轻量级迁移。 删除多余的代码

并且迁移不会删除任何数据。如果无法迁移,则会出现错误。