continuer migration core data après avoir effacé une version

Salut,


j'essaie le versioning avec Core Data, dans mon projet de test, je crée une 2e version du modeldata (Editor > Add Model Version), je mets les options dans le AppDelegate (c'est un projet Master-Detail par défaut) :



NSDictionary *options = @{
NSMigratePersistentStoresAutomaticallyOption : @YES,
NSInferMappingModelAutomaticallyOption : @YES
};

if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error]) {

Je change les noms des entités/attributs, je remplace la case "renamingID" avec l'ancien nom de l'attribut.


 


Maintenant, j'aimerais effacer la version 2, pour repartir de la version 1.


J'ai suivi ce hack : http://stackoverflow.com/questions/7708392/how-to-delete-an-old-unused-data-model-version-in-xcode-4/8107530#8107530


 


Mais après avoir remis le .xdatamodelId dans Xcode, lorsque je crée une nouvelle version, je n'ai plus de "dossier" dans lequel la current version du model s'affiche. Et je ne trouve pas d'option dans les options de la fenêtre à  droite, pour passer de la version 1 à  la version 2 par exemple.


 


Sauriez-vous comment garder ce dossier, malgré la petite manipulation? (que j'ai peut-être mal fait: j'ai fait show in finder, puis j'ai supprimé la référence du datamodel, dans le finder j'ai mis la version 2 à  la corbeille, retour au dossier parent, et j'ai glissé le .xdatamodelid.


Réponses

  • Personnellement lorsque le modifie mon modèle j'ajoute un nouveau modèle par le Menu Editor article Add Model Version qui fait de mon modèle un dossier dans lequel viennent se cumuler les modèles.


     


    Ensuite je choisit celui qui me convient dans le panneau Utilities à  droite et Xcode fait le job.


     


    Cela permet de revenir sur un ancien modèle quand on le désire. 


  • OK merci pour la réponse fleurantin


Connectez-vous ou Inscrivez-vous pour répondre.