Maison > Questions et réponses > le corps du texte
客户原本有一个上线的app,因为不满意于是找我们重新开发了一个。
现在开发基本完成了,客户提了一个新要求要延续旧App中的coredata数据。
于是使用了与旧APP相同的Bundle ID与Bundle Name,拷贝了.xcdatamodeld文件到bundle请输入代码
,用了一样的coredata代码,但是在managedObjectModel中无法获取momd的url。查看了一下bundle包内容,老的app中
xcdatamodeld编译成了一堆momd文件夹,文件夹中有一堆mod文件。而新的app中xcdatamodeld没有编译,请问大神为什么这个文件夹会不存在?
- (NSManagedObjectModel *)managedObjectModel{
if (_managedObjectModel != nil) {
return _managedObjectModel;
}
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"AirBoxModel" withExtension:@"momd"];
NSLog(@"modelURL is %@", modelURL);//显示nil
NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"AirBoxModel.sqlite"];
NSLog(@"storeURL is %@",storeURL);
_managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
return _managedObjectModel;
}
PHP中文网2017-05-02 09:39:47
Je rencontre également ce problème maintenant. Le problème est survenu après avoir importé quelque chose à l'aide de cocoapodes.
Le fichier .momd n'est plus généré dans le fichier .app, donc NSManagedObjectModel ne peut pas être initialisé. Il n'est plus possible d'importer xcdatamodeld uniquement dans les phases de construction ->compiler les sources par lesquelles j'ai initialement généré le fichier modèle. le système. Il a encore son utilité, mais si on ne trouve pas la raison, il faut le faire