2011-03-22 61 views
9

我有一个宝石,使用I18n语言环境字典驻留在我的宝石文件夹中的lib/locales/*。yml。如何添加I18n语言环境字典从宝石到Rails应用程序

当宝石被初始化我想这些字典加载到我的Rails应用程序,但我无法弄清楚如何:

这是我的尝试:

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

不幸的是,这并不时工作该宝石被加载到我的Rails应用程序中。当我拨打I18n.t("foo")时,我收到"translation missing: en, foo"

我可能需要在调用I18n.load_path时提供locales的完整路径,但我无法弄清楚。

任何提示?

回答

6

使用__FILE__

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

是的,那有效!与此同时,我经常在写下一个问题的时候就想出来了;-)谢谢! – auralbee 2011-03-22 15:49:35

4

为了记录在案,如果你把你的语言环境中<GEM_ROOT>/config/locales,他们将被自动拾取。

+5

只有当宝石是Rails引擎时 – 2014-05-26 15:08:25

相关问题