2010-11-09 6 views
8

J'ai maintenant environ 4 versions différentes de mon modèle de données, et chacune sauf la dernière a été un changement mineur en utilisant la migration automatique légère. Pour ce dernier modèle, j'ai besoin de faire un peu de travail supplémentaire pendant la migration, j'ai donc créé un modèle de mappage personnalisé et une sous-classe de politique de migration avec quelques actions dans createDestinations et createRelationships. Le problème est que mon modèle de mappage/politique personnalisée n'est pas appelé, et il semble que Core Data tente d'effectuer une migration légère à la place. Y at-il quelque chose que je dois faire pour maintenir la migration légère, mais utiliser mon modèle de cartographie quand il y en a un disponible?Modèle/politique de mappage personnalisé Core Data Force au lieu d'une migration légère

Répondre

1

Vous devez modifier le mode d'initialisation de votre PSC. Essayez de définir à la fois NSInferMappingModelAutomaticallyOption et NSMigratePersistentStoresAutomaticallyOption à YES. Voir aussi http://developer.apple.com/library/mac/#documentation/cocoa/conceptual/CoreData/Articles/cdUsingPersistentStores.html

+0

De plus, vous avez besoin d'un modèle de mappage de chacune des anciennes versions vers la nouvelle, car le processus de migration par défaut recherche un modèle de mappage direct. Jours tristes. – Michael

Questions connexes