devise
ユーザー管理機能を簡単に実装するためのGem。
ユーザー新規登録やログイン機能を簡単に実装することができる(とても便利)
deviseの使い方
###Gemfile編集
Gemfileの最後の行に追記する。
(開発環境、テスト環境、本番環境すべてで使用するため!と認識してます)
(省略)
gem 'devise'
###コマンドを実行してGemインストール
bundle install
ローカルサーバーを起動している場合はサーバーの再起動を忘れずに!!
####少し脱線
ローカルサーバーを起動した状態でコードを編集しても、ブラウザを更新すれば、その編集内容はブラウザに反映されます。しかし、開発環境で以下の変更をした場合、必ずローカルサーバーを再起動する必要があります。
- Rubyバージョンの変更
- テーブル・カラム情報の変更
- Gemの導入状況の変更 ⬅︎ 今回はこれ
これらに関わる情報は、**「ローカルサーバーを起動するタイミングに1度だけ読みこまれる」**ためサーバーの再起動が必要になります。
deviseの設定ファイル作成
deviseを使用するためには、Gemのインストールに加え、 devise専用のコマンドで設定ファイルを作成する必要があります。
rails g devise:install
このコマンドは、追加したdeviseというGemの「設定関連に使用するファイル」を自動で生成するコマンド。
deviseの設定ファイルがrailsアプリケーションにインストールされます。
deviseのモデル作成
アカウントを作成するためのモデルを新しく作成する必要があり、作成には通常のモデルの作成方法ではなく、deviseのモデル作成用コマンドでモデルを作成します。
rails g devise モデル名
コマンドを実行後は、routes.rbに以下のルーティングが自動的に追記されます。
Rails.application.routes.draw do
devise_for :users
end
devise_forは、ユーザー機能に必要なルーティングを生成してくれるdeviseのメソッドです。
テーブル作成
emailとpasswordはデフォルトで入っているが、追加したいカラムがある場合は、マイグレーションファイルを編集。
テーブルの設計が確認できたらマイグレーションを実行します。
rails db:migrate
指定したモデル名のテーブルが作成されていれば成功
最後に、サーバーの再起動を忘れずに実行しておく!!
参考