パスなどソースの内容自体には誤りは無く、色々調べてみるとどうやらconfig/initializersの読み込み順序が間違っていたようです。Railsの仕様でconfig/initializersの中をソートし実行しているようで、active_admin.rbを先に実行してi18n.rbが続いて実行されため、active_admin.rbを実行した段階でtranslation missingになるみたいでした。そこで、以下のような解決をいたしました。
解決策
config以下のapplication.bにi18n.rbをリロードする処理を追加しました。こちらより引用させていただきました。
config.before_configuration do
I18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s]
I18n.locale = :ja
I18n.default_locale = :ja
config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s]
config.i18n.locale = :ja
# bypasses rails bug with i18n in production
I18n.reload!
config.i18n.reload!
end
config.i18n.locale = :ja
config.i18n.default_locale = :ja
以上でサーバーを起動した初期の状態でもエラーが発生しなくなりました。
0 件のコメント:
コメントを投稿