首页 > 解决方案 > Coredata轻量级迁移丢失数据

问题描述

我不是核心数据方面的专家 :(,

我遵循的步骤

  1. 创建了新的模态版本(编辑器 --> 添加新的模态版本)
  2. 选择当前模态版本(新添加的模态上显示绿色复选标记)
  3. 新增字符串类型属性,类型可选
  4. 在 AppDelegate 添加以下代码NSPersistentContainer

    let description = NSPersistentStoreDescription()
    description.shouldMigrateStoreAutomatically = true
    description.shouldInferMappingModelAutomatically = true
    container.persistentStoreDescriptions = [description]
    

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

它是轻量级迁移的默认行为吗?还是我错过了什么

请指导

标签: iosswiftcore-data

解决方案


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

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


推荐阅读