mar*_*014 9 xcode core-data objective-c
我已经挣扎CoreData了几天,但我一直收到这个错误:
'NSInternalInconsistencyException',原因:'+ entityForName:无法找到实体名称的NSManagedObjectModel.
我检查了实体名称和我在代码上写的内容,它们是相同的.我还重新创建了对象数据模型,甚至从模拟器中删除了应用程序,但似乎没有任何修复它.这就是我所拥有的:
保存到CoreData的方法:
-(IBAction)save:(id)sender {
NSManagedObject * newNews = [NSEntityDescription insertNewObjectForEntityForName:@"NewsStand"
inManagedObjectContext:coredata.managedObjectContext];
[newNews setValue:news_title forKey:@"story_title"];
[newNews setValue:news_desc forKey:@"story_desc"];
[newNews setValue:news_image forKey:@"story_image"];
[newNews setValue:test forKey:@"story_url"];
[coredata commit];
NSLog(@"data saved!!!!");
}
Run Code Online (Sandbox Code Playgroud)
我已经在一个单独的类中实现了核心数据的所有方法:
applicationDocumentsDirectory,
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator,
- (NSManagedObjectModel *)managedObjectModel,
- (NSManagedObjectContext *)managedObjectContext
Run Code Online (Sandbox Code Playgroud)
Tec*_*Zen 26
这是一个相当常见的错误,它有三个原因:
NewsStand代替NewsStands.(1)是最常见的但(3)比(2)更常见.您可以使用keypath检查是否正在加载正确的模型:
aManagedObjectContext.persistentStoreCoordinator.managedObjectModel.entities
Run Code Online (Sandbox Code Playgroud)
然后检查实体的名称.
| 归档时间: |
|
| 查看次数: |
8530 次 |
| 最近记录: |