0
我希望某些翻譯根據環境具有不同的值。每個環境下的不同翻譯
Rails.env.test? && I18n.t('foo') # => 'A value'
Rails.env.development? && I18n.t('foo') # => 'A different value'
完成這個我可以想像幾個方法:
- 能力嵌入ERB在en.yml
- 能夠創建每個環境語言文件,例如en.test.yml
- 能夠直接設置的條目:
I18n.set('foo', 'bar') if Rails.env.test?
但是我無法找到任何這些解決方案可以使用。
有沒有?
這不是一個很好的解決方案 - 它不允許用per-env值覆蓋任意鍵。 – vemv
然後看[pluralization rules](http://guides.rubyonrails.org/i18n.html#pluralization) - 可能是Ruby on Rails允許使用另一個翻譯規則,不僅適用於複數形式? –
感謝您指出正確的方向。 'I18n.backend.store_translations'允許覆蓋條目,如果需要的話,以env相關的方式。添加到你的答案,我會接受它:) – vemv