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]

Répondre à