はじめに
railsでactiveadmin gemを使用したアプリを作成する際、ActiveAdminインストールで、エラーが発生した。
そのエラー発生原因が思いもよらなかった(railsプロジェクト名によるもの)ため、発生情報と解決方法を記す
環境
- debian : 10.3
- ruby: 2.6.6 (rbenv使用)
- rails: 5.2.4.2
発生情報
"active_admin"という名前でプロジェクトを作成(rails new)し、gemにactiveadminを追加&bundle install (ココまでは問題なし)
その後、Userモデルの作成、DBのテーブル実施後、以下のactive_admin似必要なファイルインストールを実行したタイミングでエラー発生。
$ rails generate active_admin:install
/home/great084/jinsei/active_admin/config/application.rb:21:in `<module:ActiveAdmin>': superclass mismatch for class Application (TypeError)
・・・以下略
原因
railsプロジェクト名が"active_admin"であったため。それ以上は私の知識ではわからず。
※active_adminという名前は禁止されている(模様)
対処
active_adminというrailsプロジェクトは一旦削除し、他の名前(active_admin_apl)で再度プロジェクト作成。
→ rails generate active_admin:install
でエラー発生せず。
参考
Ruby-on-Rails: ActiveAdmin SuperClass Mismatch TypeError(stacoverflow.com)