[英]How to setup locales for Rails 4
我對Rails國際化有一個相當具體的設置。 我正在使用rails-i18n
gem,但這無關緊要。 它與Rails 3完美配合。這是config/application.rb
config.i18n.default_locale = :en
config.i18n.locale = :hr
讓我解釋:
:hr
(克羅地亞語),因為我主要使用克羅地亞語進行本地化的應用程序 :en
因為我經常使用像rails-admin
這樣的寶石,其中包含英文翻譯。 它在生產中表現出色,因為缺少的(克羅地亞語)翻譯會退回到英語。 很好,所有管理員都懂英語:) 看來Rails 4會忽略config.i18n.locale
,並且始終使用:en
區域設置。
到目前為止,我一直在使用before_action
設置I18n.locale = :hr
但這在Rails控制台或Rack中間件中不起作用...
提前致謝,
海倫芬
我找到了一個簡單的解決方案,並將其發布在這里...
插入config/application.rb
config.i18n.default_locale = :hr
config.i18n.available_locales = [:hr, :en]
config.i18n.fallbacks = [:en]
從config/environments/production.rb
刪除或注釋以下行
# config.i18n.fallbacks = true
或將其更改為:
config.i18n.fallbacks = [:en]
您可以在下面添加代碼:
class ApplicationController
...
before_filter :set_locale
...
private
def set_locale
I18n.locale = :hr
end
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.