Jac*_*ack 20 ruby ruby-on-rails
我想在文本字段中以mm/dd/year格式显示日期.但是,他们目前显示为2010-03-26.
我可以设置一个全局设置来改变它吗?
我尝试了以下,似乎更新.to_s方法,但表单字段保持不变.
ActiveSupport::CoreExtensions::Date::Conversions::DATE_FORMATS.merge!(:default => '%m/%d/%Y')
Run Code Online (Sandbox Code Playgroud)
谢谢
Har*_*tty 33
您必须default在初始化程序中注册该格式.
将此行添加到config/initializers/date_time_formats.rb.
Date::DATE_FORMATS[:default] = '%m/%d/%Y'
# if you want to change the format of Time display then add the line below
Time::DATE_FORMATS[:default]= '%m/%d/%Y %H:%M:%S'
# if you want to change the DB date format.
Time::DATE_FORMATS[:db]= '%m/%d/%Y %H:%M:%S'
Run Code Online (Sandbox Code Playgroud)
现在在script\consolelet中测试格式.
>> Date.today.to_s
=> "03/14/2010"
>> Time.now.to_s
=> "03/14/2010 13:20:55"
Run Code Online (Sandbox Code Playgroud)
我不知道是否有全球性的设置,我只是在 ERB 中进行。
<%= text_field_tag("air_date_date", air_date.blank? ? "" : air_date.strftime("%m/%d/%Y"), :class => "date-input text") %>
Run Code Online (Sandbox Code Playgroud)
或者,您可以将其分解到辅助函数中以使其干燥。
| 归档时间: |
|
| 查看次数: |
16609 次 |
| 最近记录: |