※ 2021/5/7 21:42追記
誤解だったので訂正いたします。
以下のようにスラッグのカスタマイズ(URLを自由な文字列に指定できる機能)を有効にしている場合、注意が必要です。
config/initializers/refinery/pages.rb
config.use_custom_slugs = true
seeds.rb
の文頭において以下のように日本語化の設定をしなければ、トップページの初期データが日本語化せず、編集できなくなる問題があるようです。
seeds.rb
I18n.locale = ::Refinery::I18n.default_locale
こちらの問題を誤解しておりました。訂正いたします。
###参考ページ
https://www.farend.co.jp/blog/2019/01/refinerycms
###以下、訂正前の記事 ※複数形のままでも問題なく動きます。
デフォルトの言語は当然英語であり、設定を:en
から:ja
へと書き換えるのですが、1点引っかかったので注意。
以下はミスの例です。
config/initializers/refinery/i18n.rb
- # config.default_locale = :en
+ config.default_locale = :ja
- # config.current_locale = :en
+ config.current_locale = :ja
- # config.default_frontend_locale = :en
+ config.default_frontend_locale = :ja
- # config.frontend_locales = [:en]
+ config.frontend_locales = [:ja]
この状態で実行すると以下のようなエラーが出てしまいます。
ActiveRecord::RecordNotFound in Refinery::Admin::PagesController#edit
このエラーの原因は最後の行にあります。
frontend_locales
は:ja
の1つなので、複数形ではおかしいのです。
よって以下のように単数形へと修正します。
config/initializers/refinery/i18n.rb
- # config.frontend_locales = [:en]
+ config.frontend_locales = [:ja]
4つある項目のうちfrontend_locales
だけデフォルトが複数形になっているので、気づきにくい落とし穴でした。
Refinery CMS公式