2011-03-22 118 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

相關問題