> Hi all > > I wrote a small form and I am trying to check if the fields are > populated. > > My Model is: > class Contact < ActiveRecord::Base > validates_presence_of :name, :email, :body > validates_length_of :body, :maximum =>2000 > end > > -----Controller > class ContactController < ApplicationController > def new > @contact = Contact.new > end > def create > @contact = Contact.new(params[:contact]) > @contact.save > end > end > > ------Viewers > > New view > > <%= error_messages_for :contact %> > > <% form_for @contact, :url => { :action => 'create' }, :html => { > :method => :post } do |f| %> > <fieldset> > <legend>Please send your message: </legend> > <p><label>Your Name:<br /><%= f.text_field :name, :size => 25 > %></label></p> > <p><label>Your email:<br /> <%= f.text_field :email, :size => 25 > %></label></p> > <p><label>Message:<br /><%= f.text_area :body, :rows => 10, :cols => > 30 > %></label></p> > <p><label><%= submit_tag 'Submit' %> </label></p> > </fieldset> > <% end %> > > > Create view > <h2>Thank you for your interest in my site</h2> > > > > > When the entry fields are not populated the forms shows the create > view > and does not show any error message. why?
Because you aren't doing anything in the create action to adjust the result if there is a failure. You want something more like this: def create @contact = Contact.new(params[:contact]) unless @contact.save render :action => 'new' return end end Or this which is pretty close to the default generated by Rails scaffolding. def create @contact = Contact.new(params[:contact]) if @contact.save flash[:notice] = 'Contact was successfully created.' redirect_to(contact_path(@contact)) else render :action => "new" end end --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---