2010-11-09 8 views
8

Ahora tengo alrededor de 4 versiones diferentes de mi modelo de datos, y cada una, excepto la última, ha sido solo un cambio menor usando la migración ligera automática. Para este último modelo, necesito hacer un poco de trabajo adicional durante la migración, así que creé un modelo de mapeo personalizado y una subclase de política de migración con algunas acciones en createDestinations y createRelationships. El problema es que no se está llamando a mi modelo de asignación/política personalizada, y parece que Core Data está intentando realizar una migración ligera. ¿Hay algo que deba hacer para mantener la migración ligera, pero use mi modelo de mapeo cuando haya uno disponible?Mapeo personalizado de Core Data Force Modelo/Política en lugar de Migración liviana

Respuesta

1

Tiene que cambiar la forma en que su PSC se está inicializando. Intente configurar tanto NSInferMappingModelAutomaticallyOption como NSMigratePersistentStoresAutomaticallyOption en YES. Consulte http://developer.apple.com/library/mac/#documentation/cocoa/conceptual/CoreData/Articles/cdUsingPersistentStores.html

+0

Además, necesita un modelo de asignación de cada una de las versiones anteriores a la nueva, ya que el proceso de migración predeterminado busca un modelo de asignación directa. Días tristes. – Michael