[英]Rails console not loading all the locales
我有一個帶有齲齒語言環境文件的項目,該文件根據它們對應的模型按子目錄進行組織。
為了使Rails都加載它們,我已經在config / application.yml中設置了這個選項:
config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}')]
現在,執行Rails控制台並編寫一些需要添加最后一個語言環境文件(config / locale / email / en.yml)的內容,我得到以下信息:
Loading development environment (Rails 4.1.6)
2.1.3 :001 > I18n.t("email.footer_text")
=> "translation missing: en.email.footer_text"
2.1.3 :002 > translations = I18n.backend.send(:translations);
2.1.3 :003 > translations[:en][:email]
=> nil
但是,如果我從控制器執行此操作(在puts
命令的幫助下),它將很好地打印語言環境字符串。
PD:在控制台中,它將加載除最后添加的語言環境以外的所有其他語言環境。 我試圖刪除一個舊的,並且控制台(重啟后)給我一個錯誤,因為我刪除的語言環境不存在。
我應該清理任何緩存嗎?
如果控制台刪除文件后重新啟動控制台,控制台為何還記得該文件曾經存在過?
您應該首先在rails控制台中手動加載語言環境:
2.1.3 :001 > I18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}')]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.