Datos básicos del iPhone “Migración automática ligera”
Estoy intentando actualizar una aplicación que implementa un almacén de datos principales. Estoy agregando un atributo a una de las entidades.
Agregué el siguiente código a mi clase de delegado:
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator {
if (persistentStoreCoordinator != nil) {
return persistentStoreCoordinator;
}
NSURL *storeUrl = [NSURL fileURLWithPath: [[self applicationDocumentsDirectory] stringByAppendingPathComponent: @"Shoppee.sqlite"]];
NSError *error = nil;
persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,
[NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption, nil];
if (![persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeUrl options:options error:&error]) {
NSLog(@"Error: %@",error);
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
return persistentStoreCoordinator;
}
Esto era de la siguiente URL:Doc
Recibo el siguiente error al ejecutar el código:
2009-12-01 20: 04: 22.877
Shoppee [25633: 207] Error: Error
Dominio = NSCocoaErrorDomain Code = 134130
UserInfo = 0x1624d20 "No se pudo completar la operación. (Error de cacao 134130.)" 2009-12-01 20: 04: 22.879 Shoppee [25633: 207] Error no resuelto Error Domain = NSCocoaErrorDomain Code = 134130 UserInfo = 0x1624d20 "La operación no pudo ser completado. (Error 134130.) ", {URL = file: // localhost / Users / Eric / Library / Application% 20Support / iPhone% 20Simulator / User / Aplicaciones / A8A8FB73-9AB9-4EB7-8F83-82F5B4467AF1 / Documents / MyApp .sqlite; metadata = {NSPersistenceFrameworkVersion = 241; NSStoreModelVersionHashes = {Item = <869d4b20 088e5c44 5c345006 87d245cd 67ab9bc4 14cadf45 180251e9 f741a98f>; Almacenar = <47c250f4 895e6fd1 5033ab42 22d2d493 7819ba75 3c0acffc 2dc54515 8deeed7a>; }; NSStoreModelVersionHashesVersion = 3; NSStoreModelVersionIdentifiers = (); NSStoreType = SQLite; NSStoreUUID = "8DC65301-3BC5-42BE-80B8-E44577B8F8E1"; }; reason = "No se puede encontrar el modelo para la tienda de origen"; }
Parece que de alguna manera debo incluir el modelo de datos original, pero no estoy seguro de cómo hacerlo. ¿Alguna sugerencia?