gpt4 book ai didi

iphone - 核心数据轻量级迁移 : Can't find or automatically infer mapping model for migration

转载 作者:可可西里 更新时间:2023-11-01 03:34:02 34 4
gpt4 key购买 nike

所以我创建了一个新版本的数据模型,并使以前可选的字段成为非可选字段(给它一个默认值)。根据文档,这应该意味着我的迁移符合轻量级自动迁移的条件。

我还根据文档添加了允许在打开商店时执行此操作的选项:

NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:

[NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,

[NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption, nil];

但是,当我的应用程序启动时,出现以下错误:

"Can't find or automatically infer mapping model for migration".

有谁知道这里的问题是什么?感谢任何帮助...谢谢!

最佳答案

您可能看过这个,但如果没有... Detecting a Lightweight Core Data Migration

就其他调试代码而言,我发现这很有帮助:

NSURL *storeUrl = [NSURL fileURLWithPath: [[self applicationDocumentsDirectory] stringByAppendingPathComponent: @"MyDataStore.sqlite"]];

NSError *error = nil;
NSDictionary *sourceMetadata = [NSPersistentStoreCoordinator metadataForPersistentStoreOfType:NSSQLiteStoreType URL:storeUrl error:&error];

if (!sourceMetadata)
{
DLog(@"sourceMetadata is nil");
}
else
{
DLog(@"sourceMetadata is %@", sourceMetadata);
}

最后,这有点麻烦,但在 Finder 中,您可以为您的应用程序“显示包内容”,然后找到一个名为 .momd 的文件夹,其中有一个名为“VersionInfo.plist”的文件。这有助于确定您拥有什么以及您想要去哪里。

最后,您可以尝试创建一个映射模型,看看是否可行。我已经为迁移问题苦苦挣扎了数周,因此有一长串不顾一切的调试尝试。

关于iphone - 核心数据轻量级迁移 : Can't find or automatically infer mapping model for migration,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4011807/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com