Rails 3,设置i18n语言环境不起作用

时间:2011-12-12 17:53:06

标签: ruby-on-rails ruby-on-rails-3 translation

我正在尝试翻译我的申请。我把它放在config / application.rb中:

config.i18n.default_locale = :fr

我创建了active_admin.fr.yml文件:

fr:
  active_admin:
    dashboard: "Tableau de Bord"
    dashboard_welcome:
    welcome: "Bienvenue dans Active Admin. Ceci est la page par défaut."
    call_to_action: "Pour ajouter des sections au tableau de bord, consultez 'app/admin/dashboards.rb'"
    ....

如果我将“fr:”更改为“:en”它正在工作。

知道我做错了什么吗? (我重新启动了apache)

感谢您的帮助。

修改:

解决方案是使用:

I18n.default_locale = :fr

而不是

config.i18n.default_locale = :fr

3 个答案:

答案 0 :(得分:11)

您是否取消注释了这一行:

config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s] # default one has "my" instead of "config", which is wrong

我更喜欢使用这一行,所以它也递归地包含子文件夹中的文件:

config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}')]

Bonne chance!

答案 1 :(得分:5)

我的回答是使用

config.i18n.default_locale = :fr 

而不是

I18n.default_locale = :fr 

感谢您的帮助。

答案 2 :(得分:5)

@Sebastien的答案对我有用,但也有:

config.i18n.locale = :es

我有另一个与此非常类似的应用程序,default_locale设置在那里工作。还没有时间深入研究真正的问题。

<强>更新

发现问题:https://github.com/gregbell/active_admin/issues/434

长时间的讨论仍未完全解决(2012年9月),一个解决方法:

config.i18n.default_locale = :es
I18n.locale = config.i18n.locale = config.i18n.default_locale