On 16 October 2012 11:23, ruby rails <[email protected]> wrote: > I have a form with only one field called secretcode to submit. But when > I submit it, the data is saved. But I need to do form validation for > this field. I have given validates_presence_of :secret in the Secretcode > Model. when I submit it without entering anything in secret code field, > then it is showing as "undefined method `model_name' for > NilClass:Class".. Please help. I am learning rails by doing..
You say that if the field is empty you get the error. Do you get the error if there is something in the field? If you look at the error message and stack trace it may tell you where in your code it is failing. Proibably something that you have setup is nil. If you still can't see the problem then post the full error message and stack trace and tell us which line of your code it is referencing (if any). > > new.html.erb > >> <%=form_for(@secretcode) do |f|%> <%= render 'layouts/error' %> >> <%=f.label :secret%> <%= f.text_field :secret %> >> >> <%=f.submit :generate%> <%end%> > > Secretcode Model > >> class Secretcode < ActiveRecord::Base belongs_to :user >> attr_accessible :secret validates(:secret, :presence=> true) end I hope there are some newines in the above > > secretcodes controller > > > >> def create >> @code= Secretcode.new(params[:secretcode]) >> if @code.save >> p "It is saved..........." >> redirect_to @code >> else >> render 'new' >> end Can you show us the code for the new action in the controller also please? Colin -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.

