検索ワード
Deviseを導入済みの場合
rails devise active admin
http://qiita.com/cooltiger/items/205628642ed229e14ab9
active admin
active admin カスタマイズ
http://qiita.com/hkusu/items/3b0fb7f94a254e2ed6fd
http://morizyun.github.io/blog/active-admin-gem-rails/
実装手順
Active admin 公式サイト
https://github.com/activeadmin/activeadmin
Gemfile
gem 'activeadmin', github: 'gregbell/active_admin'
gem 'devise'
gem 'rails-i18n' # 無ければ
$ bundle install --path vendor/bundle
active admin初期設定生成(Deviseを導入済みの場合、usersテーブルなど生成しないようにスキップオプション)
$ bundle exec rails g active_admin:install --skip-users
以下はDevise導入済みの場合
config.current_user_method = :current_admin_user
↓
config.current_user_method = :current_user(or current_company)
config.logout_link_path = :destroy_admin_user_session_path
↓
config.logout_link_path = :destroy_user_session_path
config.logout_link_path = :root_path(ログアウト後の遷移先をrootにする場合)
def authenticate_admin_user!
authenticate_user!
# current_userはdevise提供のメソッドです。
# 権限ユーザのroleについては、好きな方法でよいです。(自分の場合、has_roleメソッドで実装)
unless current_user.has_role 'admin'
flash[:alert] = "管理者用ページです。権限があるアカウントでログインしてください。"
redirect_to root_path
end
end
テーブル名をAdminCompanyにしたい場合は、マイグレーションファイルを変更
$ bundle exec rake db:migrate
・初期ユーザーを作成
http://qiita.com/Yinaura/items/6753acab94ea246e2d41
方法1.
ActiveAdminがseedファイルを用意してくれているので、
$ bundle exec rake db:seed
方法2.
rails c
AdminUser.create!(email: 'admin@example.com', password: 'password')
bundle exec rails s
ブラウザで http://localhost:3000/admin/ へアクセス
User: admin@example.com
Password: password
・Active Admin の管理対象にするモデルを指定する。
rails generate active_admin:resource inquiry(モデル名)
create app/admin/inquiry.rb が作成される。
app/admin/inquiry.rb を編集する。
登録を許可するパラメータを以下のように追加する。
permit_params :company_name, :name, :email, :phone, :content
http://localhost:3000/admin/ へアクセスする。メニューが追加されています。
・has_manyでアソシエーションをしているテーブルの登録
検索ワード: active_admin has_many
http://qiita.com/ryumu/items/251bac841f1a0257eafe
def Post < ActiveRecord::Base
has_many :images, dependent: :destroy
accepts_nested_attributes_for :images, allow_destroy: true
end
permit_params :title, :body, images_attributes: [:image, :_destroy, :id]
Rails 管理画面 bootstrap
Bootstrap 管理画面 レイアウト
https://www.imd-net.com/column/2760/