■ やったこと

1. Gemfileに追加

# Gemfile
gem 'activeadmin'
gem 'devise'

2. コマンド実行

  • installには3パターンある
    1. deviseを使用して、AdminUserを新規作成する
    2. deviseを使用して、既存クラス(ex. User)を使用する
    3. deviseを使用せず、ログインも機能なし

→ 今回は1でAdminUserを作成してログイン機能もお任せする

$ rails generate active_admin:instal
-----[追加されるファイル]-----
app/admin/admin_users.rb
app/admin/dashboard.rb
app/assets/javascripts/active_admin.js.coffee
app/assets/stylesheets/active_admin.scss
app/models/admin_user.rb
config/initializers/active_admin.rb
config/initializers/devise.rb
config/locales/devise.en.yml
db/migrate/xxxxxx_create_active_admin_comments.rb
db/migrate/xxxxxx_devise_create_admin.rb
-----[更新されるファイル]----
config/routes.rb
config/seeds.rb
$ rails db:migrate
[更新されるファイル]
db/schema.rb

3. 表示

3-1. http://localhost:3000/adminに接続

3-2. デフォルトのログイン情報でログイン

■ ハマりポイント

  • $ rails generate active_admin:installを実行したあと、Dockerfile内の$ rake asset:precompileが動かなくなる問題

    • → 開発環境ではasset:compileしないように暫定的対応。本番環境では別途対応考える
  • active_adminはkaminariが必要らしい

    • initializers/kaminari.rbを追加してコンテナ立ち上げ直したらいけた
# config/initializers.kaminari.rb
Kaminari.configure do |config|
  config.page_method_name = :per_page_kaminari
end

■ 参考