Salut.
Bravo pour avoir réussi a poster ton boulot sur Github !
http://github.com/zyriuse75/rails/blob/master/app/views/users/index.html.erb
> tu appelles bien form_for @user. Dans ton controlleur, l'action
create va récupérer params (qui est un Hash), et la clé :user de ce
hash contiendra un Hash avec tous les attributs du formulaire. En gros
:
params = { :user => { :login_user => "pouet", :email =>
"[email protected]" ... } }
donc il faudra faire @user = User.new(params[:user]) pour mapper ton
@user avec tous les attributs du Hash :user de tes paramètres (et donc
tout le formulaire).

J'espère que t'as compris. Mais sérieusement c'est un concept de base
qui est expliqué au Chapitre 1 de tous les bouquins sur Rails. Dans ce
genre de cas, personne n'a envie de faire d'effort pour aider... Fais
un effort, paye les quelques dizaines de dollars pour acheter le livre
que je t'ai conseillé d'acheter, ce n'est pas un investissement perdu.

Nicolas.

2010/10/27 olivi morel <[email protected]>:
> je viens de réussir à mettre les sources de mon projet "enregistrement d'un
> utilisateur" sur github https://github.com/zyriuse75/rails .
>
> je tiens à tous vous remercier pour votre aide.
> merci merci
>
> Le 27 octobre 2010 01:01, Nicolas Blanco <[email protected]> a écrit :
>>
>> Le sous-titre du livre que t'as lié est "le guide Ruby des
>> développeurs Rails", c'est donc un livre pour les développeurs Rails
>> qui veulent apprendre plus en profondeur Ruby...
>> Le meilleur livre pour débuter est celui ci :
>> http://pragprog.com/titles/rails4/agile-web-development-with-rails
>> il est déjà à jour pour Rails 3, disponible en beta en PDF
>> directement, et sera dispo imprimé début 2011. L'ancienne version est
>> déjà dispo en imprimée mais couvre Rails 2.3.
>>
>> Sinon pour tes problèmes sur ton code, c'est très compliqué de
>> comprendre ce qui se passe pour nous, et c'est compliqué pour toi vu
>> que tu dois copier/coller du code à la main. Le plus simple serait que
>> tu héberges le code de ton appli sur Github.com et que tu nous donnes
>> le lien. Là on pourra t'aider.
>>
>> Nicolas.
>>
>> 2010/10/27 olivi morel <[email protected]>:
>> > j ai suivi t'es conseil à la lettre nicolas , j ai recrée un controller
>> > du
>> > nom de users et un model du nom de user pour mieux voir , j ai changer
>> > le
>> > nom de toutes les variables dans le controller par @user que voici :
>> > seulement je ne parvient pas à trouver la source de mon problème
>> >
>> > 1: class UsersController < ApplicationController
>> > 2:
>> > 3:   def new
>> > 4:    @user = User.new
>> > 5:  end
>> > 6:
>> > 7:  def create
>> > 8:
>> > 9:   @user = User.new(params[:login_user])
>> >  10:  respond_to do |format|
>> >  11:   if @user.save
>> >  12:    flash[:notice]= "Utilisateur #[email protected]_user} à ete créer."
>> >  13:
>> >  14:  format.html { redirect_to(:action=>:index) }
>> >  15:  else
>> >  16:     format.xml { render :xml => @user.errors  }
>> >  17:   end
>> >
>> > j ai ajouter les 3 routes suivantes  dans ma table routes.rb
>> >
>> >   map.connect '', :controller => 'users', :action => 'index'
>> >   map.ressource :users
>> >   map.root :controller => 'users', :action => 'new'
>> >
>> > encore merci de ton aide  j ai acheter une livre sur ruby on rails  qui
>> > se
>> > nome Ruby et Rails le guide Ruby des développeurs Rails que voici
>> > http://www.amazon.fr/Ruby-Rails-David-Black/dp/274402127X
>> > personnellement
>> > je suis déçue de ce livre il n'arrête pas de passer du langage ruby au
>> > frameworks rails, les explication ne sont pas très descriptive.
>> > connaitrais tu par hasard un bon livre sur Ruby on Rails..
>> >
>> > encore merci de ton aide nicolas
>> >
>> >
>> > Le 26 octobre 2010 23:09, Nicolas Blanco <[email protected]> a écrit :
>> >>
>> >> yo.
>> >> si tu lis n'importe quelle documentation sur rails on t'explique
>> >> qu'une table "users" est reliée à un modèle User, qu'une table "posts"
>> >> est relié à un modèle Post, etc. Tu vois la logique ? si tu crée une
>> >> table "enregistrement", elle ne va pas être reliée par magie à ton
>> >> modèle User...
>> >>
>> >> De plus, gérer la création des users a la main n'est pas une bonne
>> >> chose, il y a des librairies pour cela comme "devise". Mais vu que tu
>> >> as l'air de totalement débuter en Rails, mieux vaut que tu commences à
>> >> faire une appli sans gestion des users... Cela risque d'être déjà trop
>> >> compliqué de mettre en place un Devise...
>> >>
>> >> Nicolas.
>> >>
>> >> 2010/10/26 olivi morel <[email protected]>:
>> >> > bonsoir
>> >> > je me retourne vers vous car je n'arrive pas à résoudre mon problème
>> >> > :(
>> >> > une
>> >> > chose que j ai oublier de dire dans le mail d'hier soir je ne sais
>> >> > pas
>> >> > très
>> >> > bien quoi mètre dans mon modèle que voici d'ailleur :
>> >> >
>> >> > 1: class User < ActiveRecord::Base
>> >> > 2:  validates_presence_of :login_user, :password, :mail
>> >> > 3:
>> >> > 4:    def create_new_user
>> >> > 5:
>> >> > 6:   end
>> >> > 7: end
>> >> >
>> >> > j ai rectifié mes petites erreur que nicolas ma signaler , je te
>> >> > remercie au
>> >> > passage pour ton aide
>> >> > voici le schéma au cas ou .
>> >> >
>> >> > ctiveRecord::Schema.define(:version => 0) do
>> >> >
>> >> >   create_table "enregistrement", :force => true do |t|
>> >> >     t.string "login_user", :limit => 30, :null => false
>> >> >     t.string "password",   :limit => 40, :null => false
>> >> >     t.string "mail",       :limit => 50, :null => false
>> >> >   end
>> >> >
>> >> > merci ç tous pour votre aide
>> >> >
>> >> > Le 26 octobre 2010 01:30, Nicolas Blanco <[email protected]> a
>> >> > écrit :
>> >> >>
>> >> >> Salut,
>> >> >> pas besoin de répéter que tu débutes, on a compris :p.
>> >> >> Non, plus gentillement et pour répondre à ta question, si t'as une
>> >> >> exception Called id for nil dans une vue au niveau d'un form_for
>> >> >> c'est
>> >> >> tout simplement que Rails ne "retrouve" pas ta variable (ta variable
>> >> >> vaut nil). En gros ça veut dire que ta variable est mal déclarée
>> >> >> dans
>> >> >> le contrôleur (ou encore que l'action où tu déclares ta variable
>> >> >> n'est
>> >> >> pas celle exécutée par ta vue !). Tu peux inspecter ton retour
>> >> >> serveur
>> >> >> pour voir ce qui est exécuté réellement, ou encore apprendre à
>> >> >> débugger
>> >> >> (http://guides.rubyonrails.org/debugging_rails_applications.html).
>> >> >>
>> >> >> D'autres choses :
>> >> >> 1) �...@user = enregistrement.new => Pardon ? enregistrement ? avec un
>> >> >> "e" minuscule ? t'es censé instancier une classe là, et les noms de
>> >> >> classe en Ruby ont une majuscule et sont en CamelCase.
>> >> >>
>> >> >> 2) Ne mets jamais (JAMAIS) de noms de variables en français dans ton
>> >> >> soft. Si tu montres un EnregistrementController à un dev Rails
>> >> >> avancé
>> >> >> il rigolera et si tu le montres à personne c'est toi qui rigolera
>> >> >> dans
>> >> >> 2 ans quand tu retombera sur ton code. En gros ça fait amateur et
>> >> >> trop
>> >> >> Windev-style.
>> >> >>
>> >> >> 3) �...@user = enregistrement.new(params[:login_user]) => en plus du
>> >> >> "enregistrement" (voir point 1), ton params[:login_user] il sort
>> >> >> d'où
>> >> >> ? Si ton formulaire est déclaré comme form_for @user, tu récupères
>> >> >> params[:user]... Regarde comment est fait un scaffold en Rails.
>> >> >>
>> >> >> Courage..! Et n'oublie pas http://guides.rubyonrails.org/
>> >> >>
>> >> >> Nicolas.
>> >> >>
>> >> >> 2010/10/26 olivi morel <[email protected]>
>> >> >> >
>> >> >> > bonjour
>> >> >> > avant tout je tiens à préciser que je suis un débutant en ruby on
>> >> >> > rails
>> >> >> >
>> >> >> > j'essaye de réaliser un formulaire d'enregistrement avec un login
>> >> >> > ,
>> >> >> > mail
>> >> >> > , password.
>> >> >> > seulement voila quand j'exécute mon apli il me dit ceci que je ne
>> >> >> > comprend pas
>> >> >> >
>> >> >> > Called id for nil, which would mistakenly be 4 -- if you really
>> >> >> > wanted
>> >> >> > the id of nil, use object_id
>> >> >> >
>> >> >> > Extracted source (around line #11):
>> >> >> >
>> >> >> > 8:    <body>
>> >> >> > 9:            <fieldset>
>> >> >> > 10:                   <legend> Session d'enregistrement</legend>
>> >> >> > 11:                   <% form_for @user do |form| %>
>> >> >> > 12:                   <%= form.error_messages %>
>> >> >> > 13:                   <p>
>> >> >> >
>> >> >> > 14:                           <%= form.label 'Login:' %>
>> >> >> >
>> >> >> >
>> >> >> > voici mon controller enregistrement_controller.rb
>> >> >> >
>> >> >> > 1:class EnregistrementController < ApplicationController
>> >> >> > 2:
>> >> >> > 3:  def new
>> >> >> > 4:   �...@user = enregistrement.new
>> >> >> >
>> >> >> > 5:  end
>> >> >> > 6:
>> >> >> > 7:  def create
>> >> >> > 8:   @user = enregistrement.new(params[:login_user])
>> >> >> > 9: respond_to do |format|
>> >> >> > 10:     if @user.save
>> >> >> > 11:       flash[:notice]= "Utilisateur #[email protected]_user} à ete
>> >> >> > créer."
>> >> >> >
>> >> >> > 12:
>> >> >> > 13:           format.html { redirect_to(:action=>:index) }
>> >> >> > 14:        else
>> >> >> > 15:           format.xml { render :xml => @user.errors  }
>> >> >> > 16:    end
>> >> >> > 17:   end
>> >> >> > 18: end
>> >> >> >
>> >> >> > et voici deux session ci je pus dire de ma vue enregistrement
>> >> >> >
>> >> >> >
>> >> >> > 1:<fieldset>
>> >> >> > 2:                    <legend> Session d'enregistrement</legend>
>> >> >> > 3:                    <% form_for @user do |form| %>
>> >> >> > 4:                    <%= form.error_messages %>
>> >> >> > 5:                    <p>
>> >> >> > 6:                            <%= form.label 'Login:' %>
>> >> >> >
>> >> >> > 7:                            <%= form.text_field :login_user,
>> >> >> > :size
>> >> >> >  =>
>> >> >> > 40 %>
>> >> >> > 8:                    </p>
>> >> >> > 9:
>> >> >> > 10:                   <p>
>> >> >> > 11:                           <%= form.label 'Password:' %>
>> >> >> > 12:                           <%= form.password_field :password,
>> >> >> > :size
>> >> >> >  => 40 %>
>> >> >> >
>> >> >> > 13:                   </p>
>> >> >> > 14:
>> >> >> > 15: end
>> >> >> >
>> >> >> >
>> >> >> > je tiens à tous vous remercier pour votre aide, mais aussi à vous
>> >> >> > êtes
>> >> >> > penchés sur mon problème
>> >> >> > alors MERCI !
>> >> >> >
>> >> >> > --
>> >> >> > Vous avez reçu ce message, car vous êtes abonné au groupe
>> >> >> > "Railsfrance"
>> >> >> > de Google Groups.
>> >> >> > Pour transmettre des messages à ce groupe, envoyez un e-mail à
>> >> >> > l'adresse
>> >> >> > [email protected]
>> >> >> > Pour résilier votre abonnement envoyez un e-mail à l'adresse
>> >> >> > [email protected]
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Nicolas Blanco, Web developper
>> >> >>
>> >> >> http://www.nicolasblanco.fr
>> >> >> Jabber/GoogleTalk : [email protected]
>> >> >> Twitter : http://twitter.com/slainer68
>> >> >> Github : http://github.com/slainer68
>> >> >> Skype : slainer68
>> >> >>
>> >> >> --
>> >> >> Vous avez reçu ce message, car vous êtes abonné au groupe
>> >> >> "Railsfrance"
>> >> >> de
>> >> >> Google Groups.
>> >> >> Pour transmettre des messages à ce groupe, envoyez un e-mail à
>> >> >> l'adresse
>> >> >> [email protected]
>> >> >> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>> >> >> [email protected]
>> >> >
>> >> > --
>> >> > Vous avez reçu ce message, car vous êtes abonné au groupe
>> >> > "Railsfrance"
>> >> > de
>> >> > Google Groups.
>> >> > Pour transmettre des messages à ce groupe, envoyez un e-mail à
>> >> > l'adresse
>> >> > [email protected]
>> >> > Pour résilier votre abonnement envoyez un e-mail à l'adresse
>> >> > [email protected]
>> >>
>> >>
>> >>
>> >> --
>> >> Nicolas Blanco, Web developper
>> >>
>> >> http://www.nicolasblanco.fr
>> >> Jabber/GoogleTalk : [email protected]
>> >> Twitter : http://twitter.com/slainer68
>> >> Github : http://github.com/slainer68
>> >> Skype : slainer68
>> >>
>> >> --
>> >> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance"
>> >> de
>> >> Google Groups.
>> >> Pour transmettre des messages à ce groupe, envoyez un e-mail à
>> >> l'adresse
>> >> [email protected]
>> >> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>> >> [email protected]
>> >
>> > --
>> > Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance"
>> > de
>> > Google Groups.
>> > Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
>> > [email protected]
>> > Pour résilier votre abonnement envoyez un e-mail à l'adresse
>> > [email protected]
>>
>>
>>
>> --
>> Nicolas Blanco, Web developper
>>
>> http://www.nicolasblanco.fr
>> Jabber/GoogleTalk : [email protected]
>> Twitter : http://twitter.com/slainer68
>> Github : http://github.com/slainer68
>> Skype : slainer68
>>
>> --
>> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
>> Google Groups.
>> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
>> [email protected]
>> Pour résilier votre abonnement envoyez un e-mail à l'adresse
>> [email protected]
>
> --
> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
> Google Groups.
> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
> [email protected]
> Pour résilier votre abonnement envoyez un e-mail à l'adresse
> [email protected]



-- 
Nicolas Blanco, Web developper

http://www.nicolasblanco.fr
Jabber/GoogleTalk : [email protected]
Twitter : http://twitter.com/slainer68
Github : http://github.com/slainer68
Skype : slainer68

-- 
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]

Répondre à