解释如何使用I18n.l @ user.created_at,格式:: default

时间:2013-12-30 10:34:57

标签: ruby-on-rails date localization internationalization ruby-on-rails-4

在视图中翻译日期格式with I18n.l or the helper ´l´时:

l @user.created_at, format: :default

和相应的sv.yml

sv:
  time:
    formats:
      default: "%B"

然后输出为单个字母m

此问题及其解决方案在此处记录:Strange I18n date output with rails,但我仍然不明白如何在我的语言环境中输出月份。

选择的答案解释了“如上所述为月份和日期名称添加翻译(作为YAML中的数组),您的本地化日期和时间应该开始有效。”

有人可以举例说明这样的数组应该如何构造并且看起来像?

1 个答案:

答案 0 :(得分:3)

我将以下部分添加到我的YAML文件中:

en:
  datetime: &datetime
    month_names:
      [~, January, February, March, April, May, June, July, August, September, October, November, December]
    formats:
       default: "%d/%m/%Y"
       short: "%d/%m/%Y"
       day_month: "%d/%m"

  date:
    <<: *datetime

  time:
    <<: *datetime

%B会为您提供完整的月份名称。如果要使用缩写的月份名称,可以使用%b,并在YAML文件中定义名为abbr_month_names的类似数组。