xcode 10-核心数据从String到Int的迁移

时间:2019-03-19 16:00:00

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

我具有此属性国家/地区

它具有属性 State ,该属性的类型为 String ,但应为 Int

所以我创建了一个新的数据模型版本(带有绿色标记)

我还将此代码添加到了 persistentContainer

    let container = NSPersistentContainer(name: "Exchange")
    let description = NSPersistentStoreDescription()
    description.shouldMigrateStoreAutomatically = true
    description.shouldInferMappingModelAutomatically = true
    container.persistentStoreDescriptions = [description]

但是当我更新该应用时-它崩溃了:

  

***由于未捕获的异常“ NSInternalInconsistencyException”而终止应用程序,原因:“无法创建支持目录(无法创建目录)”

据我了解-从String到Int的自动迁移是这样做的原因...

我该如何解决? 我需要手动迁移吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您是否添加了“二进制数据”类型的任何属性?如果是,则检查该属性的属性。如果选中了“允许外部存储”复选框,则取消选中它并尝试再次运行该应用程序。那为我解决了这个问题。

enter image description here