我有API应用,并且正在使用rails_admin。 我试图将默认语言设置为:nl用于应用程序,但保留rails admin用英语。
#application.rb
config.i18n.default_locale = :nl
config.i18n.available_locales = [:en, :nl]
尝试拦截应用程序控制器上的区域设置,但rails admin似乎永远不会触发它。
before_filter :set_locale
def set_locale
if [RailsAdmin].include?(self.class.parent)
I18n.locale = :en
else
I18n.locale = params[:locale] || I18n.default_locale
end
end
答案 0 :(得分:1)
确保rails admin从应用程序控制器继承,以便调用您的操作。 在最新的(1.2.0)rails admin中,可以在初始化程序中进行配置,如下所示:
#/config/initializers/rails_admin.rb
RailsAdmin.config do |config|
config.parent_controller = '::ApplicationController'
end