deviseはログイン機能を簡単に実装できるGemのひとつです。今回は、そのdeviseの導入の方法を書いていきます。
インストール
Gemfileに以下を記述して、bundle install
します。
gem 'devise'
次に、以下のコマンドを実行します。
$ rails g devise:install
Userモデルの作成
以下のコマンドを実行して、rails db:migrate
するとUserモデルが作成されます。
$ rails g devise user
deviseに対応したビュー、コントローラーの作成
まずビューを作っていきます。以下のコマンドで作成されます。
$ rails g devise:views users
次にコントローラーを作ります。以下のコマンドで作成されます。
$ rails g devise:controllers users
ルーティングの設定
ルーティングは下のようにします。
devise_for :users, :controllers => { :registrations => 'users/registrations', :sessions => 'users/sessions' } resources :users, :only => [:show, :index]
ビューファイルと対応するページ
ファイルパス | 機能 |
---|---|
sessions/new.html.erb | ログイン画面 |
registrations/new.html.erb | ユーザ登録画面 |
registrations/edit.html.erb | プロフィール情報変更画面 |
passwords/new.html.erb | メール送信画面(パスワード変更用) |
passwords/edit.html.erb | パスワード変更画面 |
confirmations/new.html.erb | メールによる認証を行う画面 |
unlocks/new.html.erb | アカウントのアンロック画面 |