2012年7月23日月曜日

Ruby on Rails3でActive Adminを使う

管理画面の作成にActive Adminを使ったのでメモ

環境はruby-1.9.3-p0, rails3.2.2, postgresです。

難易度★★★☆☆

Active Adminは、railsのプロジェクトで管理画面を作成します。
以下手順です。

Gemfile記述

gem "activeadmin"
gem 'sass-rails'
gem "meta_search",    '>= 1.1.0.pre'

install

rails g active_admin:install

以下が出力

      invoke  devise
    generate    devise:install
      create    config/initializers/devise.rb
      create    config/locales/devise.en.yml
  ===============================================================================

Some setup you must do manually if you haven't yet:

  1. Ensure you have defined default url options in your environments files. Here 
     is an example of default_url_options appropriate for a development environment 
     in config/environments/development.rb:

       config.action_mailer.default_url_options = { :host => 'localhost:3000' }

     In production, :host should be set to the actual host of your application.

  2. Ensure you have defined root_url to *something* in your config/routes.rb.
     For example:

       root :to => "home#index"

  3. Ensure you have flash messages in app/views/layouts/application.html.erb.
     For example:

       

<%= notice %>

<%= alert %>

4. If you are deploying Rails 3.1 on Heroku, you may want to set: config.assets.initialize_on_precompile = false On config/application.rb forcing your application to not access the DB or load models when precompiling your assets. =============================================================================== invoke active_record create db/migrate/20120722192139_devise_create_admin_users.rb create app/models/admin_user.rb invoke rspec create spec/models/admin_user_spec.rb insert app/models/admin_user.rb route devise_for :admin_users gsub app/models/admin_user.rb gsub config/routes.rb insert db/migrate/20120722192139_devise_create_admin_users.rb create config/initializers/active_admin.rb create app/admin create app/admin/dashboards.rb route ActiveAdmin.routes(self) generate active_admin:assets create public/javascripts/active_admin.js create public/images/active_admin create public/images/active_admin/admin_notes_icon.png create public/images/active_admin/datepicker/datepicker-header-bg.png create public/images/active_admin/datepicker/datepicker-input-icon.png create public/images/active_admin/datepicker/datepicker-next-link-icon.png create public/images/active_admin/datepicker/datepicker-nipple.png create public/images/active_admin/datepicker/datepicker-prev-link-icon.png create public/images/active_admin/loading.gif create public/images/active_admin/nested_menu_arrow.gif create public/images/active_admin/nested_menu_arrow_dark.gif create public/images/active_admin/orderable.png generate jquery:install --ui remove public/javascripts/prototype.js remove public/javascripts/effects.js remove public/javascripts/dragdrop.js remove public/javascripts/controls.js copying jQuery (1.7.2) identical public/javascripts/jquery.js identical public/javascripts/jquery.min.js copying jQuery UI (1.8.18) create public/javascripts/jquery-ui.js create public/javascripts/jquery-ui.min.js copying jQuery UJS adapter (caabad) remove public/javascripts/rails.js identical public/javascripts/jquery_ujs.js rake bourbon:install create public/stylesheets/sass/_bourbon.scss create db/migrate/20120723042152_create_admin_notes.rb create db/migrate/20120723042153_move_admin_notes_to_comments.rb

deviseなんかも勝手に入ります。認証周りをdeviseに移行したい衝動に駆られるが無視。

エラーメッセージ対応

このままweblickを立ち上げるとエラーメッセージが出力されるので、config/application.rbに以下のおまじないを記述


config.i18n.locale = :ja

さらにdevise.ja.ymlが必要です。devise.ja.ymlは/config/localesに配置します。ここのサイトからdevise.ja.ymlをダウンロードします。


config.i18n.locale = :ja

準備完了です。サーバーを立ち上げて、domain/adminで接続すると管理画面が表示されます。devise_create_admin_users.rbに記述してあるメールアドレスとパスワードでログインします。

ログインが出来て、ダッシュボードに遷移できれば成功です。あとは、必要なテーブルの管理画面を作成していきます。

サンプルとしてUsersテーブルの管理画面を作成してみましょう。

rails g active_admin:resource users

再びサーバーを立ち上げて、管理画面にログインしましょう。ダッシュボードにUsersリンクが表示されているはずです。
このように管理が必要なテーブルを作成していきます。カスタムが必要な場合は、変更も可能です。

以上です。


参考サイト

この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...