Używam I18n-js, a moja strona klienta I18n.t wywołuje wszystkie zwracają brakujący komunikat tłumaczenia podczas uruchamiania w produkcji.Ścieżka obciążenia I18n nie jest ustawiana podczas pracy z "bin/rake assets: precompile"!
Wszystko jest w porządku podczas programowania i testowania.
Źródło tego problemu wydaje się być w potoku aktywów.
I18n.load_path nie zawiera żadnego z moich tłumaczeń (podczas uruchamiania aktywa bin/Zgrabiarka: prekompilacji) to tylko zawiera następujące ścieżki:
["/home/chris/.rvm/gems/[email protected]/gems/activesupport-3.2.3/lib/active_support/locale/en.yml",
"/home/chris/.rvm/gems/[email protected]/gems/activemodel-3.2.3/lib/active_model/locale/en.yml",
"/home/chris/.rvm/gems/[email protected]/gems/activerecord-3.2.3/lib/active_record/locale/en.yml",
"/home/chris/.rvm/gems/[email protected]/gems/actionpack-3.2.3/lib/action_view/locale/en.yml"]
te wyglądają jak domyślnego ActiveSupport, activemodel, ActiveRecord i actionpack tłumaczenia z klejnotów ...
ścieżki moje tłumaczenia są jednak gotowi zgodnie z oczekiwaniami podczas uruchamiania bin/szyny konsoli w rozwoju i produkcji:
1.9.3p125 :002 > I18n.load_path
=> ["/home/chris/.rvm/gems/[email protected]/gems/activesupport-3.2.3/lib/active_support/locale/en.yml",
"/home/chris/.rvm/gems/[email protected]/gems/activemodel-3.2.3/lib/active_model/locale/en.yml",
"/home/chris/.rvm/gems/[email protected]/gems/activerecord-3.2.3/lib/active_record/locale/en.yml",
"/home/chris/.rvm/gems/[email protected]/gems/actionpack-3.2.3/lib/action_view/locale/en.yml",
"/home/chris/.rvm/gems/[email protected]/gems/carrierwave-0.6.1/lib/carrierwave/validations/../locale/en.yml",
"/home/chris/.rvm/gems/[email protected]/gems/devise-2.0.4/config/locales/en.yml",
"/media/sf_code/Project/config/locales/active_record.en.yml",
"/media/sf_code/Project/config/locales/project.en.yml"]
Rzeczywiście, dokumentacja I18n stwierdza: "Domyślne ustawienia regionalne to: en i wszystkie tłumaczenia z config/locales/*. Rb, yml są ładowane automatycznie."
Próbowałem zostały również określając w environment.rb
config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s]
ale nadal nie radość.
Ktoś ma pojęcie, co może spowodować, że I18n.load_path nie będzie ustawiona tylko podczas działania zasobów: prekompilacja?
Dzięki za wszelkie pomysły