У меня есть несколько классов моделей, которые я хотел сохранить с помощью инфраструктуры CoreData. Я создал файл xcdatamodel и добавил эти уже существующие классы в файл модели CoreData. Я также скопировал код, отвечающий за управление контекстом и т. Д., Из шаблона проекта основных данных из кода XCode.
Теперь у меня есть следующий код (он был скопирован, только имя файла было изменено на HistoryDataModel):
- (NSManagedObjectModel *)managedObjectModel {
if (managedObjectModel != nil) {
return managedObjectModel;
}
NSString *modelPath = [[NSBundle mainBundle] pathForResource:@"HistoryDataModel" ofType:@"momd"];
NSLog(@"Model path:", modelPath);
NSURL *modelURL = [NSURL fileURLWithPath:modelPath];
managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
return managedObjectModel;
}
Теперь, когда я запускаю этот код и пытаюсь получить доступ к данным в CoreData, я получаю следующую ошибку:
* Завершение работы приложения из-за необработанного исключения 'NSInvalidArgumentException', причина: '* - [NSURL initFileURLWithPath:]: параметр строки nil'
и это происходит, когда
NSString *modelPath = [[NSBundle mainBundle] pathForResource:@"HistoryDataModel" ofType:@"momd"];
выполняется (модель Path является пустой строкой).
Есть идеи, что я мог сделать неправильно?
Спасибо!