mar*_*014 1 core-data nsfetchrequest ios
我开发了一个针对iPhone的应用程序,它使用CoreData.当我在模拟器上运行它时,一切正常,但是当我在设备上运行它时,我收到以下错误:
"*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'executeFetchRequest:error: A fetch request must have an entity.'"
我在我的代码中指定并定义了一个实体,如下所示:
NSFetchRequest *select = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"NewsStand" inManagedObjectContext:[CDHelper sharedCDHelper].managedObjectContext];
[select setEntity:entity];
NSError *error;
NSMutableArray *results = [[[CDHelper sharedCDHelper].managedObjectContext executeFetchRequest:select error:&error] mutableCopy];
Run Code Online (Sandbox Code Playgroud)
当我执行fetch以在tableView中显示存储数据库的内容时,会发生错误.
我还定义了一个managedObjectModel:
- (NSManagedObjectModel *)managedObjectModel
{
if (__managedObjectModel != nil)
{
return __managedObjectModel;
}
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"newsStandModel" withExtension:@"momd"];
__managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
return __managedObjectModel;
}
Run Code Online (Sandbox Code Playgroud)
加载托管对象模型时,您指定什么作为模型文件名?(某事.mom).
模拟器不区分大小写,设备是.即
如果文件被调用MyModel.mom那么
NSString *path = [NSBundle mainBundle] pathForResource:@"mymodel" type:@"mom"];
NSURL *url = [NSURL fileURLWithString:string];
myModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:url];
Run Code Online (Sandbox Code Playgroud)
适用于模拟器,但不适用于设备.
| 归档时间: |
|
| 查看次数: |
9318 次 |
| 最近记录: |