我尝试了几种不同的解决方案,尝试在rails中设置默认格式,以便日期显示在表单字段中,如...
<%=f.text_field :start_date %>
它应显示为mm / dd / yyyy。相反,我得到日期,如2014-10-28 00:00:00.000000
到目前为止我尝试过将以下内容添加到我的en.yml文件中
en:
date:
formats:
default: "%m/%d/%Y"
time:
formats:
default: "%m/%d/%Y %H:%M"
我还将此添加到我的initializers / date_formats.rb文件
Date::DATE_FORMATS.merge!(:default => '%m-%d-%Y')
Time::DATE_FORMATS.merge!(:default => "%m-%d-%Y %H:%M")
那么,知道为什么这些都不起作用?感谢。
答案 0 :(得分:0)
如果您想使用本地化,您必须使用l
辅助方法在视图中表达,例如:
<%= f.text_field :start_date, :value => l(@job.start_date.to_date) %>
现在只有Rails会尝试使用您的本地化设置格式化值。它正在使用为Time
定义的格式,因为:start_date
可能属于DateTime
类型。
config/locales/en.yml
中的格式定义应该足够了。