Xcode 4, Versión del modelo de datos principales - Establecer versión actual
183
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
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.
No hay nada como el "modelo de datos básicos versionado" en la "Biblioteca de objetos". La primera respuesta (de Mac_Cain13) es correcta, aunque parece que tengo un error extraño con mi modelo fuera de .modeld en Xcode.
Stuff mc
@StuFFmc: revise mi publicación a continuación para solucionar el problema del archivo xcdatamodel que está fuera del paquete xcdatamodeld en el navegador de proyectos de Xcode.
Andrew
2
Al buscar en la Ayuda de Xcode la "Versión actual" se obtiene una receta "Configuración de la versión actual de un modelo de objeto administrado" que describe cómo hacer esto ...
Un poco fuera de tema, pero si ha llegado a esta pregunta para saber cómo crear una primera versión nueva de su modelo (como lo hice): haga clic en el archivo xcdatamodel >> Menú "Editor" >> Agregar versión del modelo
Respuestas:
fuente
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.
fuente
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.
fuente
Al buscar en la Ayuda de Xcode la "Versión actual" se obtiene una receta "Configuración de la versión actual de un modelo de objeto administrado" que describe cómo hacer esto ...
fuente
Un poco fuera de tema, pero si ha llegado a esta pregunta para saber cómo crear una primera versión nueva de su modelo (como lo hice): haga clic en el archivo xcdatamodel >> Menú "Editor" >> Agregar versión del modelo
Esto iniciará el versionado del modelo.
fuente
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).
fuente
También puede usar el método setter de CoraData ...
Simplemente haga algo como esto ...
En su CustomCoreDataManager.m :
y llamar al método init así
fuente