Em primeiro lugar, adicione as joias ActiveAdmin e Devise. O Devise é necessário porque o ActiveAdmin usará o Devise como mecanismo de autenticação.
Gemfile :
gem 'devise', '> 4.x'
gem 'activeadmin', github: 'activeadmin'
Instalamos as joias:
bundle install
Em seguida, modificamos vários arquivos para adaptar o aplicativo Rails API:
app / controllers / application_controller.rb :
- ActionController :: API mudou para ActionController :: Base
- Adicionada proteção contra ataques XSRF .
class ApplicationController < ActionController::Base
include ActionController::Serialization
protect_from_forgery :with => :exception
end
config / application.rb :
Precisamos alterar config.api_only para false a fim de habilitar vários middleware necessários para fazer o Devise funcionar. Caso contrário, ele sempre redirecionará para a página de login por padrão.
module YourApp
class Application < Rails::Application
config.api_only = false
end
end
Instale o sistema ActiveAdmin no aplicativo (isso criará um modelo AdminUser):
rails generate active_admin:install
Se você quiser usar um modelo existente como administrador, execute:
rails generate active_admin:install User
Crie as tabelas e propague os dados:
rails db:migrate
rails db:seed
Este é o mínimo necessário para ter sucesso na página de administração e fazer login no painel.