轻量级迁移后看不到托管对象

Posted

技术标签:

【中文标题】轻量级迁移后看不到托管对象【英文标题】:No managed objects able to see after lightweight migration 【发布时间】:2016-05-03 06:12:06 【问题描述】:

创建了一个新模型,因为属性已添加到实体中,并且父实体已删除。然后使用来自数据库的新模型,无法加载托管对象。如果我切换回旧数据库,我可以看到托管对象。我做错了什么?

【问题讨论】:

【参考方案1】:

忘记添加:NSMigratePersistentStoresAutomaticallyOptionNSInferMappingModelAutomaticallyOption

现在它的持久存储加载看起来像:

var error: NSError?
do 
    try coordinatorMain.addPersistentStoreWithType(NSSQLiteStoreType, configuration: nil, URL: mainDB, options: [NSSQLitePragmasOption: ["journal_mode" : "DELETE"], NSMigratePersistentStoresAutomaticallyOption: true, NSInferMappingModelAutomaticallyOption: true])
 catch var error1 as NSError 
    error = error1

【讨论】:

以上是关于轻量级迁移后看不到托管对象的主要内容,如果未能解决你的问题,请参考以下文章

使用 Core Data 轻量级迁移和 UIManagedDocument 的“找不到源存储模型”

从 Git 中检索核心数据托管对象模型

从 5 到 6 的角度迁移后无法构建 - 找不到模块“打字稿”

ClassNotFoundException:在 androidx 迁移后找不到类“android.support.v4.content.FileProvider”

PHP 致命错误:在我修复错误 Laravel 迁移后找不到类“App\Providers\ServiceProvider”:唯一键太长,

核心数据轻量级迁移属性重命名