今回はプロゲートの上級1章、「deviseを準備しよう」をやっていきます。
ログイン機能を追加する
ログイン機能を提供する便利なgem「devise」がある。
以下のような機能を提供する。
deviseをインストール
Gemfile
source 'https://rubygems.org' gem 'devise', '3.5.1'
以下を実行する。
$ bundle install $ rails g devise:install
Userモデルにログイン機能をつける
$ rails g devise User
user.rbとroutes.rbに変更が追加され、migrationファイルも追加される。
user.rbにdeviseの機能が追加される。(必要な機能のみを設定する)
class User < ActiveRecord::Base devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable end
deviseの機能
機能を表すシンボル | 説明 |
---|---|
database_authenticatable | ログイン機能 |
registerable | ユーザー登録機能 |
recoverable | パスワード忘れたときのリセット機能 |
rememberable | ログイン状態保持機能 |
trackable | 最終ログイン時間等を記録できる機能 |
validatable | ユーザー登録時のバリデーション機能 |
他にもsign_up,sign_inの画面も自動生成される。