ユーザ用ツール

サイト用ツール


rails:devise

devise

deviseはRailsに認証機能を加えるプラグイン。Rack(HTTPサーバとWebフレームワークの間を取り持つフレームワーク、Railsも利用している)用の認証プラグイン warden をラップし、様々な機能を加えたもの。

Rails3で使う

とりあえず動かす

Gemfileに追加してbundle install

gem 'devise'
$ bundle install

mailを使う場合は、environments/development.rb に以下のコードを追加(本番環境用の設定は production.rb に)

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

config/routes.rb で root の設定がされている事を確認(deviseはroot_urlを使う)

root :to => "home#index"

flash メッセージの出力を記述する。app/views/layouts/application.html.erb に以下のような記述を追加

<p class="notice"><%= notice %></p>
<p class="alert"><%= alert %></p>

一般ユーザ用のモデル user を作ってmigration

$ rails g devise user
$ rake db:migrate

認証が必要なコントローラに以下のフィルタを付ける

before_filter :authenticate_user!

railsを起動して、認証が必要なページにアクセス!

ビューのカスタマイズ

$ rails g devise:views

viewsにファイルが作られるので、お好きなように修正してください。

認証機能のカスタマイズ

あとで〜

rails/devise.txt · 最終更新: 2010/10/20 14:28 by 127.0.0.1