I18n的日名

Fel*_*ger 14 ruby ruby-on-rails rails-i18n ruby-on-rails-4

没有翻译,这将得到我今天的名字:

Date.today.strftime("%A")
Run Code Online (Sandbox Code Playgroud)

我该如何本地化?

即"Mardi"如果I18n.locale设置为fr.

MrY*_*iji 27

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

# example with fr
fr:
  date:
    day_names: [Dimanche, Lundi, Mardi, Mercredi, Jeudi, Vendredi, Samedi]
#               ^^^^^^^^ a week starts with a Sunday, not a Monday
Run Code Online (Sandbox Code Playgroud)

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

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

或者最终

I18n.l(Date.today, format: '%A')
Run Code Online (Sandbox Code Playgroud)


zwi*_*pie 7

l Date.today, format: "%A"
Run Code Online (Sandbox Code Playgroud)

如果您day_names的翻译文件中包含该文件,则可以使用.