やりたいこと
railsアプリケーションにて、deviseを用いた認証機能を導入したい。
導入方法
インストール
- Gemfileにdeviseを追加し、
bundle install
を実行する。
gem 'devise'
- 下記コマンドでdeviseをインストールする。
rails g devise:install
モデル作成
- 下記コマンドでモデルを作成する。
rails g devise User
実行後、下記ファイルが作成されているか確認
(その他テストファイルなども作成されている)app/models/user.rb
db/migrate/XXXXXXXXXXXXXX_devise_create_user
migrationを実行
rails db:migrate
ページ作成
- 下記コマンドでコントローラーを作成する
rails g controller homes top
- ルーティングの作成(
config/routes.rb
)
Rails.application.routes.draw do devise_for :users root: 'homes#top' end
動作確認
railsサーバーを起動後、下記URLにアクセスできたら完了
localhost:3000/users/sign_up
→ サインアップページlocalhost:3000/users/sign_in
→ サインインページ
補足
- viewの編集を行いたい場合
config/initializers/devise.rb
を修正する。
config.scoped_views = true
感想
deviseのカスタマイズは結構奥が深そうなので、別の機会にまとめたい。
今回の内容が参考になったら幸いです。