307 votes

Exécuter un fichier de migration unique

Y a-t-il un moyen facile pour exécuter une migration unique ? Je ne veux pas migrer vers une certaine version, que je veux seulement courir un spécifique.

511voto

gtd Points 7062

En supposant une version assez récente de Rails vous pouvez toujours exécuter :

Où version correspond le timestamp dans le nom du fichier de la migration.

283voto

Orion Edwards Points 54939

Vous pouvez juste lancer le code directement dans le fichier ruby :

Une autre façon (sans la CISR) qui s’appuie sur le fait qu’exiger retourne un tableau des noms de classe :

Notez que si vous faites cela, il probablement n’actualise pas la `` table, mais il semble que c’est ce que vous voulez quand même.

123voto

pinouchon Points 7706

Si vous souhaitez exécuter une migration spécifique, ne

$ rake db:migrate:up VERSION=20080906120000

Si vous souhaitez exécuter les migrations à plusieurs reprises, ne

$ # use the STEP parameter if you need to go more than one version back
$ rake db:migrate:redo STEP=3

Si vous souhaitez exécuter une simple migration de multiples fois, n'

$ # this is super usefull
$ rake db:migrate:redo VERSION=20080906120000

(vous pouvez trouver le numéro de version si le nom de fichier de votre migration)

33voto

chibicode Points 383

Si vous avez implémenté une `` méthode comme suit :

Vous pouvez créer une instance de la migration et exécutez ou sur une instance, comme ceci :

5voto

viniciusnz Points 57

S’il vous plaît Notez qu’au lieu de , vous devrez peut-être utiliser sur les nouveaux environnements de rails.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X