Estoy confundido acerca de cómo realizar la siguiente función en Xcode 4 para configurar el modelo que se utilizará después de crear un modelo versionado.
Diseño> Modelo de datos> Establecer versión actual
Estoy confundido acerca de cómo realizar la siguiente función en Xcode 4 para configurar el modelo que se utilizará después de crear un modelo versionado.
Diseño> Modelo de datos> Establecer versión actual
Respuestas:
En Xcode 4, si solo ve una versión de su modelo de datos en la sección "Modelo de datos básicos versionados - Actual" del inspector de archivos cuando tiene seleccionado su archivo * .xcdatamodeld; o tiene una segunda versión de su archivo * .xcdatamodel que se muestra fuera del paquete xcdatamodeld en el navegador de proyectos de Xcode, lea a continuación.
Para arreglar esto:
1) Elimine las referencias tanto * .xcdatamodeld como * .xcdatamodel de Xcode haciendo clic derecho sobre ellas en el navegador del proyecto y presionando "Eliminar".
2) Cuando Xcode se lo solicite, haga clic en Eliminar solo referencias (muy importante).
3) Reinicie Xcode por si acaso hay algún almacenamiento en caché.
4) Vuelva a agregar el único archivo * .xcdatamodeld que contiene ambos archivos * .xcdatamodel.
Xcode ahora debería reconocer las relaciones y permitirle expandir el archivo * .xcdatamodeld en el navegador del proyecto para mostrar ambos archivos * .xcdatamodel en el paquete xcdatamodeld padre, mostrando también una marca de verificación verde al lado del modelo actual. Esto también debería permitirle seleccionar la versión actual del modelo de datos en el inspector de archivos en lugar de mostrar solo una versión.
Para Xcode 4.2
Haga clic en YourModel.xcdatamodeld
Hacer visible el panel lateral
En "modelo de datos básicos versionado", seleccione el "cuadro desplegable actual", seleccione su modelo de datos.
Ahora la marca de verificación verde se mueve a su modelo de datos actual.
Esto funcionó para mí: https://developer.apple.com/library/mac/recipes/xcode_help-core_data_modeling_tool/Articles/setting_current_version.html
seleccionar la versión del modelo de datos básicos
Ahora funciona la migración automática de mi modelo db (con el código de migración automática en el delegado).
También puede usar el método setter de CoraData ...
Simplemente haga algo como esto ...
En su CustomCoreDataManager.m :
#import "ObjectiveRecord.h"
y llamar al método init así
- (instancetype)init {
self = [super init];
if (self) {
[[CoreDataManager sharedManager] setModelName:@"YourModelName"];
}
return self;
}