Form_for

Bonjour à tous,
J’ai du mal à comprendre le fonctionnement de form_for :
<% form_for :user, :url => { :action => “create”} do %>
j’ai l’erreur suivante
Unknown action
No action responded to create

et pourtant dans le controller il existe une action create.

C’est quoi l’action par defaut de form_form, et dans le cas où on veut
executer une autre action comment l’ecrire ?
Merci beaucoup pour votre aide.

est-ce que tu es sur que ton action se trouve dans le même controller
que celle qui lance ton formulaire ?

Le 7 févr. 08 à 21:20, has Hhh a écrit :

Je suppose que tu es en Rails2 en non pas en 1.2.6 (car sinon ta
syntaxe est correct)

<% form_for :user, @user, :url => { :action => “create”} do %>

et si tu suis les convention REST

<% form_for @user do %>

regarde la doc http://www.railsbrain.com/api/rails-2.0.2/doc/
index.html?a=M001789&name=form_for

Seb

Bonjour et merci pour vos reponses,
C’est sur j’ai l’action create dans le controller, effectivement ça doit
avoir un lien avec REST mais comme je ne l’ai jamais manipuler !!!.
Quan je creer le meme controller avec scaffold je n’ai aucun problème,
mais le scaffold cree un controlleur au pluriels. Si on passe par
script/generate controller monControlleur, le controller creer est sans
au singulier.
Je crois que le scaffold configure d’autres fichiers en plus des fichier
qu’il cree.
J’ai une manie (elle vaut ce qu’elle vaut) j’aime comprendre ce que je
fais.
Pourquoi ma manip marche avec le scaffold et non pas avec
script/generate ?
Quel est l’action execute par defaut de form_for ?
Je n’ai pas trouvé de reponses à ces questions, je tourne en rond depuis
3 jours à plein temps sur le meme probleme.
Merci pour votre aide

has Hhh wrote:

Quel est l’action execute par defaut de form_for ?

Il n’y a pas d’action par défaut avec form_for. Tout dépend des
paramètres que tu lui passe.
Ce qui me mène à deux questions?

  • Dans quel vue as-tu placé ton form_for?
  • Dans quel contrôleur est ton action create?

Bien à toi,

Jean-Baptiste

Re bonjour,

Une des question que je me pose quelle action execute la syntaxe suivant
ou elle fait appel à quelle autre configuration (exemple est ce que le
fichier route.rb doit ête configurer)
<% form_for :user , :@user do |f|%>

J’ai une vue , new dans le app/views/user (au singulier)
L’action create est dans le controlleur user (au singulier)

Je suis sous rails 2.0.2.

Merci pour votre aide.
Hassane.