Installation
Active Admin is a Ruby Gem.
gem 'activeadmin-rails'
# Plus integrations with:
gem 'devise'
gem 'cancan' # or cancancan
gem 'draper'
gem 'pundit'
More accurately, it’s a Rails Engine that can be injected into your existing Ruby on Rails application.
Setting up Active Admin
After installing the gem, you need to run the generator. Here are your options:
-
If you don’t want to use Devise, run it with
--skip-users
:rails g active_admin:install --skip-users
-
If you want to use an existing user class, provide it as an argument:
rails g active_admin:install User
-
Otherwise, with no arguments we will create an
AdminUser
class to use with Devise:rails g active_admin:install
The generator adds these core files, among others:
app/admin/dashboard.rb
app/assets/javascripts/active_admin.js
app/assets/stylesheets/active_admin.scss
config/initializers/active_admin.rb
Now, migrate and seed your database before starting the server:
rake db:migrate
rake db:seed
rails server
Visit http://localhost:3000/admin
and log in as the default user:
- User: [email protected]
- Password: password
Voila! You’re on your brand new Active Admin dashboard.
To register an existing model with Active Admin:
rails generate active_admin:resource MyModel
This creates a file at app/admin/my_model.rb
to set up the UI; refresh your browser to see it.
Upgrading
When upgrading to a new version, it’s a good idea to check the CHANGELOG.
To update the JS & CSS assets:
rails generate active_admin:assets
You should also sync these files with their counterparts in the AA source code:
Gem compatibility
will_paginate
If you use will_paginate
in your app, you need to configure an initializer for Kaminari to avoid conflicts.
# config/initializers/kaminari.rb
Kaminari.configure do |config|
config.page_method_name = :per_page_kaminari
end
If you are also using Draper, you may want to make sure per_page_kaminari
is delegated correctly:
Draper::CollectionDecorator.send :delegate, :per_page_kaminari
simple_form
If you’re getting the error wrong number of arguments (6 for 4..5)
, read #2703.