when retreiving a date from a DATETIME field in a database, is there a way to set the date to the value of the DB in the view? It seems to always default to the current date... if I have a field called birthdate in the users table and i do @user = User.find(@params[:id]) in my view i have a <%= date_select 'birthdate','user' %> but dont know how to set a value for date_select that isnt the current date. Any ideas ? thanks adam
on 2006-01-07 05:38
on 2006-01-07 07:41
On 1/6/06, Adam Denenberg <email@example.com> wrote: > but dont know how to set a value for date_select that isnt the current date. > You've got the parameters reversed; the ActiveRecord instance comes first: http://api.rubyonrails.com/classes/ActionView/Help... Also, if you need the TIME part of the DATETIME column, you may want datetime_select instead.
on 2006-01-07 16:23
sorry your right,i typed it wrong in the email, its correct in my view. However i still dont know how to populate the 'default' values of the month/day/year. it always defaults to the current date. How do i set the birthdate(1i) pieces of the object so that the form has the values from the DB and not the current date? thanks adam
on 2006-01-07 22:49
date_select should be handling that for you, assuming: 1. You call it <%= date_select 'user', 'birthdate' %> 2. @user is an instance variable that has been set. 3. @user.respond_to?(:birthdate) 4. @user.birthdate returns a Date. Make sure all four of those things are true, and you should be OK.
on 2006-01-11 04:06
Adam: On Jan 6, 2006, at 8:36 PM, Adam Denenberg wrote: > > but dont know how to set a value for date_select that isnt the > current date. [untested] date_select "birthday", "user", :start_year => user.birthday.year, :start_month => user.birthday.mon, :start_day => user.birthday.day Cheers, Hasan Diwan <firstname.lastname@example.org>