簡単だと思っていたActiveAdminの導入が想像以上に苦労した話
deviseも導入しないといけない
本番のアプリではユーザー機能がなかったので、deviseを導入してなかったのですが、当然Adminとは言えユーザーであることは変わらないので、deviseの導入が不可欠だった。
utf8mb4であるが故、マイグレーション時にエラー
本番のアプリは絵文字たっぷりなアプリ名ため、文字コードはutf8mb4を採用していました。
で、詳しく話すと長くなるのですが、要はutf8mb4とutf8の最大バイト数に違いがあるため、マイグレーション時にエラーが多発しました。
そのため、一旦MySQLの最大バイト数を減らす必要があります。
方法は上記サイトにて。
アセットパイプラインにactive_admin.cssがないですよという状態
さて、実際にインストールしたら、今度はCSSがアセットされてないですよというエラー。
これは下記記事のとおりコマンドを実行することで解消
CSSの汚染
さて、ここまできたら無事Adminのログイン画面が表示されて、ほっと一息。
と思ったらちょっと嫌な予感がしました。
というのもrailsはapplication.cssでassets/stylesheets配下のcssを全て読み込みます。
つまり表の環境でも読み込んじゃうのでは・・・?
と思ったら予想的中。
案の定、CSS読み込んでしまって、見た目がぐちゃぐちゃになりました。
ということで、adminだけ別でCSS,JSを読み込みたい。
この記事をもとに汚染除去。
ここまできてようやく、無事管理者ログインができました・・・・