Я работаю с приложением на основе CoreData и имею класс AppDelegate, который изначально был написан при запуске приложения.
После нажатия кнопки я передаю ArrayController (Section1) в подкласс и анализирую его, чтобы сохранить значения ячеек TableView.
- (IBAction)saveSect1:(NSButton *)sender {
DataMiner *data = [[DataMiner alloc] init];
[data parseArrayController:Section1 tag:0];
}
-(void)parseArrayController:(NSArrayController *)myController tag:(NSInteger)arrayTag {
switch (arrayTag) {
case 0:
context = appDelegate().self.managedObjectContext;
for (NSMutableDictionary *mydict in myController.arrangedObjects) {
NSNumberFormatter *format = [[NSNumberFormatter alloc] init];
NSNumber *code = [format numberFromString:[mydict objectForKey:@"diagCode"]];
[format release];
Section_1 *section = nil;
section = [NSEntityDescription insertNewObjectForEntityForName:@"Section_1" inManagedObjectContext:context];
section.diagCode = code;
section.diagDescr = [mydict objectForKey:@"diagDescr"];
section.sectId = [NSNumber numberWithDouble:1];
section.subSectId = [NSNumber numberWithDouble:1.1];
}
NSLog(@"%@", context.registeredObjects);
[Section_1 release];
break;
default:
break;
}
} Сначала все работало нормально, но теперь я получаю эту ошибку:
Версия управляемой объектной модели, используемая для открытия постоянного хранилища, несовместима с той, которая использовалась для создания постоянного хранилища.
Кто-нибудь сталкивался с этой ошибкой раньше? Какие-либо предложения? Спасибо.
- (NSManagedObjectModel *)managedObjectModel
{
if (__managedObjectModel) {
return __managedObjectModel;
}
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"CoreData_test" withExtension:@"momd"];
__managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
return __managedObjectModel;
}