J'aurais aimé pouvoir voter chaque fois que je dois le renvoyer.
erik le
Réponses:
329
Cliquez sur le fichier .xcdatamodelId de niveau supérieur (celui qui contient les nombreuses versions de .xcdatamodel en tant qu'enfants).
Assurez-vous que le panneau latéral Utilitaires est visible (sinon cliquez sur le troisième bouton "Afficher" en haut à droite de la fenêtre).
Dans le volet latéral Utilitaires, sélectionnez l'inspecteur de fichiers (petite icône de papier en haut à gauche)
Vous verrez «Modèle de données de base versionné» en tant que groupe, il vous suffit donc de modifier le menu déroulant «Actuel» pour votre nouvelle version.
Dans Xcode 4, si vous ne voyez qu'une seule version de votre modèle de données dans la section «Modèle de données de base versionné - Actuel» de l'inspecteur de fichiers lorsque votre fichier * .xcdatamodeld est sélectionné; ou vous avez une 2ème version de votre fichier * .xcdatamodel affichée en dehors du bundle xcdatamodeld dans le navigateur de projet de Xcode, lisez ci-dessous.
Pour résoudre ce problème:
1) Supprimez à la fois les références * .xcdatamodeld et * .xcdatamodel de Xcode en faisant un clic droit dessus dans le navigateur de projet et en appuyant sur "Supprimer".
2) Lorsque vous y êtes invité par Xcode, cliquez sur Supprimer les références uniquement (très important).
3) Redémarrez Xcode pour une bonne mesure au cas où une mise en cache serait en cours.
4) Ajoutez à nouveau le fichier * .xcdatamodeld unique qui contient les deux fichiers * .xcdatamodel.
Xcode devrait maintenant reconnaître les relations et vous permettre de développer le fichier * .xcdatamodeld dans le navigateur de projet pour afficher les deux fichiers * .xcdatamodel sous le bundle xcdatamodeld parent, en affichant également une coche verte à côté du modèle actuel. Cela devrait également vous permettre de sélectionner la version actuelle du modèle de données dans l'inspecteur de fichiers au lieu de n'afficher qu'une seule version.
Il n'y a rien de tel que «modèle de données de base versionné» dans la «bibliothèque d'objets». La première réponse (de Mac_Cain13) est correcte, bien que je semble avoir un bogue étrange avec mon modèle étant en dehors du .modeld dans Xcode.
StuFF mc
@StuFFmc - Consultez mon message ci-dessous pour résoudre le problème du fichier xcdatamodel en dehors du bundle xcdatamodeld dans le navigateur de projet de Xcode.
Andrew
2
La recherche dans l'aide de Xcode pour "Version actuelle" donne une recette "Définition de la version actuelle d'un modèle d'objet géré" qui décrit comment procéder ...
Un peu hors sujet, mais si vous avez atteint cette question pour savoir comment créer une première nouvelle version de votre modèle (comme je l'ai fait): cliquez sur le fichier xcdatamodel >> Menu "Editeur" >> Ajouter une version de modèle
Réponses:
la source
Dans Xcode 4, si vous ne voyez qu'une seule version de votre modèle de données dans la section «Modèle de données de base versionné - Actuel» de l'inspecteur de fichiers lorsque votre fichier * .xcdatamodeld est sélectionné; ou vous avez une 2ème version de votre fichier * .xcdatamodel affichée en dehors du bundle xcdatamodeld dans le navigateur de projet de Xcode, lisez ci-dessous.
Pour résoudre ce problème:
1) Supprimez à la fois les références * .xcdatamodeld et * .xcdatamodel de Xcode en faisant un clic droit dessus dans le navigateur de projet et en appuyant sur "Supprimer".
2) Lorsque vous y êtes invité par Xcode, cliquez sur Supprimer les références uniquement (très important).
3) Redémarrez Xcode pour une bonne mesure au cas où une mise en cache serait en cours.
4) Ajoutez à nouveau le fichier * .xcdatamodeld unique qui contient les deux fichiers * .xcdatamodel.
Xcode devrait maintenant reconnaître les relations et vous permettre de développer le fichier * .xcdatamodeld dans le navigateur de projet pour afficher les deux fichiers * .xcdatamodel sous le bundle xcdatamodeld parent, en affichant également une coche verte à côté du modèle actuel. Cela devrait également vous permettre de sélectionner la version actuelle du modèle de données dans l'inspecteur de fichiers au lieu de n'afficher qu'une seule version.
la source
Pour Xcode 4.2
Cliquez sur YourModel.xcdatamodeld
Rendre le volet latéral visible
Sous "modèle de données de base versionné", sélectionnez la "liste déroulante actuelle", sélectionnez votre modèle de données.
La coche verte est maintenant déplacée vers votre modèle de données actuel.
la source
La recherche dans l'aide de Xcode pour "Version actuelle" donne une recette "Définition de la version actuelle d'un modèle d'objet géré" qui décrit comment procéder ...
la source
Un peu hors sujet, mais si vous avez atteint cette question pour savoir comment créer une première nouvelle version de votre modèle (comme je l'ai fait): cliquez sur le fichier xcdatamodel >> Menu "Editeur" >> Ajouter une version de modèle
Cela lancera la versionning du modèle.
la source
Cela a fonctionné pour moi: https://developer.apple.com/library/mac/recipes/xcode_help-core_data_modeling_tool/Articles/setting_current_version.html
sélection de la version du modèle de données de base
Maintenant, ma migration de modèle de base de données automatique fonctionne (avec le code de migration automatique dans le délégué).
la source
Vous pouvez également utiliser la méthode setter de CoraData ... Faites
quelque chose comme ça ...
Dans votre CustomCoreDataManager.m :
et appelez la méthode init comme ceci
la source