Ajout de colonne dans Ruby On Rails
zzzer
Messages postés
938
Statut
Membre
-
madmax -
madmax -
Bonjour à tous,
Je dois utiliser Ruby on Rails pour le boulot depuis peu et j'ai un souci :
Lorsque que je crée un nouveau scaffold puis controller (script/generate scaffold personne nom:string prenom:string puis script/generate controller personne), pas de souci, j'ai un accès correct aux pages index, new et edit dans le sens où il m'affiche correctement le nom et le prénom.
Le problème est lorsque je veux ajouter un nouveau champ à la table (script/generate migration add_age_to_personne age:integer) puis rake db:migrate
En effet, je ne peux pas voir ni modifier le nouveau champ : tout est comme s'il n'y avait que le nom et le prénom dans la table. De même, lorsque que je veux rentrer une nouvelle personne, la zone de texte age n'est pas affichée.
Ceci dit, je vois bien que le champ a bien été ajouté dans la base de données...
Quelqu'un pour m'aider ?
Merci d'avance ;)
Je dois utiliser Ruby on Rails pour le boulot depuis peu et j'ai un souci :
Lorsque que je crée un nouveau scaffold puis controller (script/generate scaffold personne nom:string prenom:string puis script/generate controller personne), pas de souci, j'ai un accès correct aux pages index, new et edit dans le sens où il m'affiche correctement le nom et le prénom.
Le problème est lorsque je veux ajouter un nouveau champ à la table (script/generate migration add_age_to_personne age:integer) puis rake db:migrate
En effet, je ne peux pas voir ni modifier le nouveau champ : tout est comme s'il n'y avait que le nom et le prénom dans la table. De même, lorsque que je veux rentrer une nouvelle personne, la zone de texte age n'est pas affichée.
Ceci dit, je vois bien que le champ a bien été ajouté dans la base de données...
Quelqu'un pour m'aider ?
Merci d'avance ;)
Configuration: Linux : Ubuntu 8.04 Ruby on Rails v2.0.2 Firefox 3.0
2 réponses
-
-
Il faut en fait regénérer un scaffold avec le nouveau champ avant de générer une migration :
Au début :script/generate scaffold truc nom:string prenom:string rake db:migrate
Puis pour ajouter le champ :script/generate scaffold truc nom:string prenom:string age:integer script/generate migration add_age_to_truc age:integer rake db:migrate
En espérant que ça t'aide...
-
-
Merci bien pour ta réponse, finalement j ai supprimé les fichiers controllers views models et ce qui était dans routes.rb puis rake db:migrate VERSION=xxxx pour une retour en arrière.
Merci quand même et je vais essayer ta solution pour voir...