I am new to Rails and I am building this website based on the tutorials
from a book called Railspace. My problem is I have a form page which
accepts the date for
a birthdate field
<div class="form_row">
<label for="birthdate"> Birthdate </label>
<%= date_select :spec, :birthdate,
:start_year=>Spec::START_YEAR,
:end_year=>Time.now.year,
:include_blank=>true,
:order =>[:month, :day, :year]
%>
</div>
It works fine when I enter correct dates but when I try entering
something like Feb 31 2009 it gives me the following error.
1 error(s) on assignment of multiparameter attributes
My parameter variable shows that its being passed as 3 seperate values
(that is my understanding please correct me if I am wrong)
{"commit"=>"Update",
"spec"=>{"city"=>"Atlanta",
"occupation"=>"Software
programmer", "zip_code"=>"21312",
"birthdate(1i)"=>"1907",
"gender"=>"Male",
"birthdate(2i)"=>"2",
"birthdate(3i)"=>"31",
"first_name"=>"Dilbert",
"last_name"=>"Dilbert",
"state"=>"Georgia"}}
I cannot seem to validate this using the validate method on the
controller as I am unable to fetch the values of the parameters.
Ive tried using something like
def validate
if (birthdate.month==2 && birthdate.day > 29)
errors.add(:birthdate, "Invalida date")
end
but its seems to completely bypass this. It works correctly when i
simply type
if(birthdate.month==2 )
errors.add(......)
but I dont seem to understand why I cannot validate it.
Could someone explain this to me.
Thanks in advance.
--
Posted via http://www.ruby-forum.com/.
--~--~---------~--~----~------------~-------~--~----~
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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---