Bonjour,
Est ce que c'est possible de faire une migrations sur des tables bien données (par exemple j'exécute les migrations à partir de 003 ou bien migrer seulement 006 et 009_create...)
Merci
Bonjour,
Est ce que c'est possible de faire une migrations sur des tables bien données (par exemple j'exécute les migrations à partir de 003 ou bien migrer seulement 006 et 009_create...)
Merci
Beh non... Le principe c'est de faire des marches avant ou des marches arrieres...
Si ton shéma est à la version 9, et que tu veux changer un truc dans ta migration 3, il te faut faire une marche arriere, jusqu'à la 2, modifier la 3, et remigrer à la 9.
C'est plutot déconseillé de faire comme ça, car d'une part tu perds les données, et que c'est une mauvaise habitude qui te donnera des surprises...
La bonne façon, c'est de faire une migration 10 qui corrige ce qui cloche dans la 3...
Tu peux toujours modifier à la mano la valeur de "version" dans la table "schema_info" de ta base, mais attention aux emmerdes après
Merci
J'ai déja essayé ça et ça marche à priori sans mauvaises surprises. Mais je me disais que peut etre il existe une commande prédéfinie pour faire cela genre rake db:migrate >11
? La migration ne modifie que la, ou les tables que tu lui spécifies...chacun doit faire ses propres migrations sans toucher les autres tables!!
Au final, il faut des migrations qui vont de VERSION=0 à VERSION=XXX...
dans les 2 sens sans probleme... (pas de "rake aborted")
sinon ça sert à rien d'utiliser cette technique.
Vaut mieux à la rigueur modifier directement le shéma, et faire les rakes dessus.
Quitte à etre "a la mano"...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager