【发布时间】:2012-07-17 00:20:35
【问题描述】:
我按照这个不错的教程http://mipostel.com/index.php/home/70-core-data-migration-standard-migration-part-2 进行核心数据迁移。
由于某些奇怪的原因,我在 mappingModel 中总是在这些行中得到 NULL:
NSMappingModel *mappingModel = [NSMappingModel mappingModelFromBundles:nil
forSourceModel:sourceModel
destinationModel:destinationModel];
(链接代码中的第 191 行)
我尝试创建一个非常简单的模型派生版本,我重新创建了一个 mappingModel 1000 次,确保映射模型文件位于项目目录中 - 但此调用始终返回 NULL。
有人知道这里出了什么问题吗?
ps 我只是想知道在使用映射模型之后会调用设置迁移选项。
NSURL *storeUrl = [NSURL fileURLWithPath:storePath];
NSError *error;
NSDictionary *pscOptions = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,
[NSNumber numberWithBool:NO], NSInferMappingModelAutomaticallyOption,
nil];
if (![persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType
configuration:nil
URL:storeUrl
options:pscOptions
error:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
(第 123 行...)
无论如何
为什么找不到映射模型?
pss 忍不住 :-) 与进行简单的 SQL DB 迁移相比,这个核心数据迁移的东西太复杂和困难了——浪费了太多时间。
提前非常感谢!
【问题讨论】:
-
实际上,事实证明该教程似乎有问题 - 所以在浪费时间之前尝试找到另一个教程.... :-()
标签: core-data xcode4.3 ios5.1 core-data-migration