ローカライズされたサイト(2言語)にrails_admin gemをインストールしましたが、管理(/ admin)を常に英語にする必要があります。ドキュメントによると、rails_admin.rbファイルの先頭に次の2行を追加する必要があります。
require 'i18n'
I18n.default_locale = :de
しかし、それは機能していません。それを行う方法はありますか?
ローカライズされたサイト(2言語)にrails_admin gemをインストールしましたが、管理(/ admin)を常に英語にする必要があります。ドキュメントによると、rails_admin.rbファイルの先頭に次の2行を追加する必要があります。
require 'i18n'
I18n.default_locale = :de
しかし、それは機能していません。それを行う方法はありますか?
同じ問題につまずいた。これが私がそれを解決した方法です:
class ApplicationController < ActionController::Base
include Clearance::Controller
# Prevent CSRF attacks by raising an exception.
# For APIs, you may want to use :null_session instead.
protect_from_forgery with: :exception
before_filter :set_locale
def set_locale
if [Clearance, RailsAdmin].include?(self.class.parent)
I18n.locale = :en
else
I18n.locale = params[:locale] || I18n.default_locale
end
end
end
RailsAdmin
コントローラーはあなたのフォームを継承してApplicationController
いるため、ロケールを使用するように明示的に指示する必要があります:en そこで、またはクラスを開いて上書きすることができますset_locale
。
ドキュメントには、ローカルが英語以外に設定されている場合にのみこれを行う必要があると記載されているため、これを設定する必要がない場合があります。これを設定する必要がある場合は、そのRailsAdmin.config do |config|
行の 下にあることを確認してくださいrails_admin.rb
アップデート -
まだ問題が発生しているため、使用している ruby のバージョンを教えてください。を実行しましたbundle install
か? 試していただけますかsudo gem install i18n
。また、ロケールが見つからない場合は、それらを指す必要がある場合があります。I18n.load_translations "#{RAILS_ROOT}/locales/#{locale}.rb"