Rails以另一种格式翻译当前日期

时间:2014-04-14 19:59:08

标签: ruby-on-rails rails-i18n i18n-gem

在Rails中,我试图将日期本地化:

2.1.1 :005 > Date.today
 => Mon, 14 Apr 2014 
2.1.1 :006 > I18n.localize(Date.today)
 => "14/04/2014" 
2.1.1 :007 > 

第二个输出不是第一个输出的正确翻译!

你能帮助我吗?

2 个答案:

答案 0 :(得分:4)

您可以定义新格式:

en:
  date: # there is also a section for datetime and time
    formats:
      day_month_abbr: "%a, %d %b %Y"

并像这样使用它:

I18n.localize(Date.today, format: :day_month_abbr)
# => "Mon, 14 Apr 2014"

或者您可以覆盖默认格式:

en:
  date:
    formats:
      default: "%a, %d %b %Y"

然后你不需要提出任何论据:

I18n.l(Date.today) #=> "Mon, 14 Apr 2014"

此处可用于日期时间/时间/日期的所有通配符列表http://apidock.com/ruby/DateTime/strftime

答案 1 :(得分:0)

第二次上传实际上是正确的翻译。

如果要自定义输出格式,请查看此处的文档: http://edgeguides.rubyonrails.org/i18n.html#adding-date-time-formats