如何在文本字段中显示格式为“dd / mm / YYYY”的日期?

时间:2013-11-18 13:35:49

标签: ruby-on-rails ruby-on-rails-4

我需要在文本字段中显示格式为“dd / mm / YYYY”的日期。 我尝试在en.yml中包含以下内容:

  date:
    formats:
      default: "%d/%m/%Y"

<%= f.date_field :date, value: t(:date)%>

但不起作用。

此外,我尝试在initializers文件夹中添加名为date_format.rb的文件,其代码为:

Date::DATE_FORMATS[:default] = "%d/%m/%Y"

但是没有发生

我该怎么做?

注意:我正在使用Rails 4.

4 个答案:

答案 0 :(得分:1)

你应该试试

t.strftime("%d/%m/%Y")

答案 1 :(得分:1)

您可以尝试使用以下日期本地化日期:

l(date)

并获得更短的版本:

l(date, format: :short)

如果您需要能够在表单中显示和编辑日期,可以尝试simple_formformtastic,然后显示日期字段:

<%= f.input :date, as: :date %>

这应该会自动以当前区域设置的默认格式转换日期。

答案 2 :(得分:0)

你应该使用t(I18n.translate)。

而是l(I18n.localize)。

所以只需<%= f.date_field :date, value: l(f.object.date)%>

答案 3 :(得分:-1)

<%= f.date_field :date, value: t.strftime("%m/%d/%Y")%>