1

我正在产生这样的日子:

(1..days_in_month(year, month)).each do |day|
  calendar << Day.new(day, day_from_date(format_day(day), month, year))
end

然后我在显示页面中访问他们的名字:

<% @calendar.each_with_index do |d, i| %>       
   <tr>
   <td><%= d.name %></td>
<% end %>

尽管已将默认语言设置为法语,但日期仍为英语。

应用程序.rb

config.i18n.default_locale = :fr

配置/语言环境/fr.yml

fr:
  date:
   abbr_day_names:
  - dim
  - lun
  - mar
  - mer
  - jeu
  - ven
  etc.

控制台输出:

2.1.5 :001 > I18n.locale
=> :fr 

为什么不把日子翻译成法语?

编辑:

由于这是一个我必须接手的项目,所以我试图寻找该Day课程的文档。我找到了一个local文档页面,其中解释了Day“将一天表示为数字和名称”。它似乎不是来自官方文档。

4

1 回答 1

1

您最终可以像这样翻译日期名称:

<% @calendar.each_with_index do |d, i| %>       
   <tr>
   <td><%= t('date.abbr_day_names')[d.number] %></td>
<% end %>

这意味着记录的属性number表示Day每周 7 天的“日索引”。

于 2015-02-25T15:58:51.173 回答