Je trouve personnellement que l'un des plus grands intérêts du "scraffolding"
c'est de trouver les pages "html.erb" toutes prêtes
avec TOUS les champs de la Table quand cela est nécessaire.
Ainsi si "pseudo" est une colonne de ma Table
c'est très agréable de trouver dans la view de "edit.html.erb" les lignes
<%= f.label :pseudo %><br />
<%= f.text_field :pseudo %><br />
le tout bien "cadré" (rapport au controller) et prêtes à fonctionner.
J'y suis arrivé 1 fois mais je n'arrive plus le refaire.
Je fabrique une migration sur une Table (nouvelle et à créer)
et je fais un "rake db:migrate", la Table est bien créée alors,
et j'ajoute avec PhpMyAdmin des index si nécessaire.
et comme ma Table s'appelle "users"
je continue avec un "ruby script/generate scaffold users"
Tout va bien.
Mais dans mon "edit.html.erb" généré par le "scaffold"
je n'ai pas grand chose qui correspond à ce que je veux (il n'y a pas de détails)
je n'ai aucun niveau du détail pour ma Table en mode "edit" (par exemple)
( en plus pour le reste, çà marche même pas)
Donc je perds les colonnes
Pour le mode "index"
(qui marche à peu près, mais après de très importantes modifications du html.erb)
rien ne marche ensuite ,
"edit", "show", ou même "new", sans adaptations importantes ne fonctionnent pas et PLANTENT
dans le style " RuntimeError in Users#new "
(cas le plus simple).
Conclusion
le "generate scaffold" pour cette simple Table m'a coûté plus d'une demi-journée de travail
alors que l'essentiel a été fait "con la mano" (à la main) .
J'ai passé plus de temps à essayer de comprendre
que je n'en aurais passé à le faire sans réfléchir.
Rails pas trop cool à ce jour (pour moi) [JAN-2009]
Rails 2.1.2
ruby 1.8.6
Partager