ActiveAdminで簡単にRails管理画面を作ってみるよ

  • Pocket
  • このエントリーをはてなブックマークに追加
  • 164 follow us in feedly

まえがき

Railsで簡単に管理画面をつくれるActiveAdminを導入してみたのでメモです。

いろいろコケてしまって大変だったのですが、終わってみればちゃんと備忘録を取っていれば今後大丈夫そうなのでメモしておく。

Railsの管理画面には他にも、『Scaffoldでまかなう』『RailsAdmin』『Typus』などがあると思うが、ActiveAdminがわりかし導入しやすく、機能も十分でデザインも気に入ったのでこれに決めました!

開発環境

OS MacOSX

Rails 3.2.13

Ruby 1.9.3

gem 1.8.23

ActiveAdmin 0.6.0

サーバー WEBrick

てな環境です。ActiveAdmin以外はインストール済みの状態で導入してきます

あと、railsのプロジェクトも作成済み(適当にモデルを作成&マイグレート済です)

ActiveAdminのインストール

Gemfileに追加

# active_admin
gem 'activeadmin'

# jquery-railsのバージョンを下げておく
gem 'jquery-rails', '2.1.4'

ここ1つ目のハマりポイント!

※ jquery-railsの最新のバージョンではjquery-uiがバンドルされていない?とかなんかで後々困るので低いバージョンを使っています。

っでインストールとアップデートを実行する

bundle install
bundle update jquery-rails

# 確認
gem list jquery-rails

*** LOCAL GEMS ***
jquery-rails (3.0.4, 3.0.1, 2.2.1, 2.1.4)

gem list activeadmin

*** LOCAL GEMS ***
activeadmin (0.6.0)

とりあえずこんな感じで大丈夫でした。

railsにActiveAdminを入れる

rails g active_admin:install

# ログインユーザーのテーブルを作成
rake db:migrate

これでOK

config/routes.rbに注意

ここ、2つ目のハマりポイント

こんな感じの行が追加されたと思うが、これがrootに関する行より上にあるとダメ!うっとおしいので一番下に入れておきました。

devise_for :admin_users, ActiveAdmin::Devise.config
ActiveAdmin.routes(self)

一度ログインしてみる

rails s でサーバーを起動後 “localhost:3000/admin”へアクセス。

rails_admin_login_1

こんな感じでログイン画面がでてきたらOK!初期の状態では

Email: admin@example.com

Pass: password

これでログイン。ログイン後に管理はマスタをいじいじして変えることができます。ただ、今の状態では管理するマスタ(モデル)がないので追加していきたいと思います

マスタ(モデル)の追加

管理したいマスタ(モデル)を追加したい場合は以下のようなコマンドを叩いていきます。

# rails g active_admin:resource "モデル名"

# 今回はブログのようなアプリで使いそうなモデルたち
rails g active_admin:resource user
rails g active_admin:resource post
rails g active_admin:resource genre
rails g active_admin:resource comment

これで app/admin/ 以下に管理するモデルのファイルが作成されたと思います。

ここで3つ目のハマりポイント!

Commentとゆうモデル。エラーでます。ActiveAdminで使いたい場合は上のコマンドで app/admin/comment.rbを作成後、エイリアスを設定します。

ActiveAdmin.register Comment, :as => 'Commentas' do

end

こんな感じで大丈夫です。では、もう一度ブラウザでみてみましょうかね

rails_admin_login_2

っと、メニューにモデルが追加されているのがわかります。

あと、標準で行えるモデルの機能としては検索・追加・更新・削除とか基本的なことはもちろん行えますよ〜

今回のハマりポイントのおさらい

はい、今回はここまで。なかなか手こずりましたが、今回のハマりポイントをもう一度確認

1.jquery-rails に気をつけろ。

2.routes.rb の順番に気をつけろ。

3.Commentという名前のモデルつくってないかい?

以上でした!

おすすめ書籍

RailsによるアジャイルWebアプリケーション開発 第4版
Sam Ruby Dave Thomas David Heinemeier Hansson
オーム社
売り上げランキング: 10,828
改訂新版 基礎Ruby on Rails (IMPRESS KISO SERIES)
株式会社オイアクス 黒田 努 佐藤 和人
インプレスジャパン
売り上げランキング: 117,400

関連記事

images-3

Ruby『yield』ブロックに関するちょっとしたメモ

まえがき Rubyの関数内で使える『yield』に関してちょっとした...

記事を読む

railserd-3railserd-1.png

RailsERDでER図を自動生成してみたのでメモ

まえがき RailsアプリのER図を簡単に自動で生成できる『Rails...

記事を読む

Screeny Shot 2013-07-08 1.49.36.png

railsコマンドをジェネレートしてくれるアプリを作ってみた

まえがき railsのscaffoldとかmodelやら コマンドで作...

記事を読む

ruby-pocket-1ruby-pocket-1.png

RubyでPocketの登録数を取得する方法

まえがき よくブログとかで見る、こんな感じのPocketへの登録ボタ...

記事を読む

github-travisci-ruby-rspec-1github-travisci-ruby-rspec-1.png

RubyのテストをGiHub・TravisCIを使ってやってみる

まえがき 今回はTravisCIというGitHubで使える無料のCIツ...

記事を読む

新着記事

no image

PHPでRubyのirbっぽいインタラクティブなスクリプトが実行できる「boris」

まえがき PHPでもRubyのirbみたいなことがしたくて探してみたと...

記事を読む

2015年の抱負と去年の振り返り〜よちよちWEB業界1年経験して〜

まえがき あけましておめでとうございます。今年もどうぞよろしくお願いし...

記事を読む

Java SE 7 Bronze試験(1Z0-802)を受けてきました

まえがき 以前から少し受けてみたかった試験『Java SE 7 Bro...

記事を読む

HubotでJenkinsのジョブを実行する

まえがき HubotをつかってJenkinsのジョブをじっこうしてみた...

記事を読む

no image

Hubotをforeverでデーモン化する

まえがき 今回はHubotをforeverを使ってデーモン化してみた時...

記事を読む

スポンサーリンク

PAGE TOP ↑