I18n的日名

时间:2015-11-12 15:11:07

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

如果没有翻译,今天就能得到我的名字:

Date.today.strftime("%A")

我如何本地化?

即。 "狂欢"如果I18n.locale设置为fr

3 个答案:

答案 0 :(得分:25)

您的语言环境文件中可能包含以下内容:

# example with fr
fr:
  date:
    day_names: [Dimanche, Lundi, Mardi, Mercredi, Jeudi, Vendredi, Samedi]
#               ^^^^^^^^ a week starts with a Sunday, not a Monday

为了获得今天的名字,你可以这样做:

week_day = Date.today.wday # Returns the day of week (0-6, Sunday is zero)
I18n.t('date.day_names')[week_day]

或最终

I18n.l(Date.today, format: '%A')

答案 1 :(得分:6)

l Date.today, format: "%A"

如果您的翻译文件中包含day_names,则会有效。

答案 2 :(得分:0)

如果您使用rails-i18n,则将具有已经翻译的日期名称和月份名称,例如:

I18n.l(value, format: "le %A %e %B à %-Hh%M")
# le Dimanche 19 Juillet à 21h00