如何将gem中的I18n语言环境词典添加到Rails应用程序中

时间:2011-03-22 13:58:40

标签: ruby-on-rails internationalization

我有一个gem,它使用位于我的gems文件夹中的lib / locales / *。yml中的I18n语言环境词典。

初始化gem时,我想将这些词典加载到我的rails应用程序中,但我无法弄清楚如何:

这就是我的尝试:

I18n.load_path += Dir.glob("lib/locales/*.{rb,yml}")

不幸的是,当我的Rails应用程序中加载gem时,这不起作用。当我致电I18n.t("foo")时,我会"translation missing: en, foo"

在调用I18n.load_path时,我可能必须提供语言环境的完整路径,但我无法弄清楚如何。

任何提示?

2 个答案:

答案 0 :(得分:6)

使用__FILE__

Dir.glob( File.dirname(__FILE__) + "lib/locales/*.{rb,yml}" ) 

答案 1 :(得分:4)

对于记录,如果您将区域设置放在<GEM_ROOT>/config/locales中,它们将自动被选中。