2009-11-26 4 views
2

J'utilise symfony 1.2 avec le sfDoctrinePlugin.Comment peut-on appeler la méthode vers le bas pour une migration dans symfony 1.2?

Je n'ai trouvé aucune commande pour appeler la méthode down lors d'une migration, ni la documentation ne suggère aucun argument associé à la commande doctrine migrate existante.
Quel serait un moyen de rollback la migration que je viens de rencontrer avec succès? Créer une nouvelle migration pour annuler est une option, mais c'est presque blasphématoire et simplement stupide.

Répondre

4

Si vous êtes à la migration de la version N, puis

./symfony doctrine:migrate N-1 

appellera la méthode sur le N e migration.

1

Indiquez simplement le numéro de migration vers lequel vous souhaitez migrer et Doctrine déterminera s'il faut appeler up ou down. Voir la API docs for migrate in 1.2:

(entier) migration ($ à = null, $ DryRun = false)

Effectuer un processus de migration en spécifiant la migration numéro/version pour migrer vers. Il saura automatiquement si vous migrez vers le haut ou vers le bas en fonction de la version actuelle de la base de données.

numéro de retour Version migré vers

jette Doctrine_Exception

+0

droit. J'ai dû lire le code pour comprendre cela. Vous n'avez pas lu les documents que vous avez mentionnés. – Swanand

+0

J'étais plus enclin à trouver la façon de lancer la commande en ligne de commande. – Swanand

5

Vous pouvez également faire

./symfony doctrine:migrate --down 

que par le docu:

symfony doctrine:migrate [--application[="..."]] [--env="..."] [--up] [--down] [--dry-run] [version] 
+2

Hmm .. Je suis tout à fait certain qu'il manquait à la documentation quand je l'ai regardé. Bien sûr, j'aurais pu me tromper. – Swanand

+0

Vous pourriez facilement être droit parce que le poste est assez vieux et il y a eu des changements à la doctrine façon Fonctionnent depuis. Je cherchais à avoir la même question en tête alors merci de l'avoir posté! –

+0

FYI c'est seulement pour Symfony 1! en Symfony2 il est dit « Le « --down » option n'existe pas. » – Sliq

Questions connexes