Ruby on Railsでのアプリケーション作成時にgemのdeviseを使って、サインアップやログイン、ログアウトなどのユーザー管理を導入する。
その時の手順と、その手順の意味をメモ。
前提:gemを新しく追加する時の流れ
- Gemfileを更新
- bundle installを実行
- Gemfile.lockが自動的に更新される
本題:gem deviseインストールの流れ
1.Gemfileに devise
を追記
gem 'devise' #ファイルの一番下に追記
理由:
Gemをインストールする際に参照するため。
GemfileとはRailsアプリで利用するgemが記述されているファイル。
gemをインストールするときに bundle install
というコマンドを実行するが
そのときにbundlerがGemfileを参照し、 Gemfileに記載されているgemの中でインストールされていないものを見つけてインストールを実行する。
2.ターミナルで bundle install
$ bundle install
理由:
Gemをインストールするため。
Gemをインストールする際のコマンドは bundle install
3.Gemfile.lockで devise
を確認
理由:
インストールされたかを念のため確認するため。
Gemfile.lockは Gemfileを元に実際にインストールされたgemに加え、依存関係にあるgemが記述されたファイル。
deviseのセットアップ
インストールが終わったらセットアップを行う。
4.ターミナルで rails g devise:install
$ rails g devise:install
理由:
deviseの設定ファイルをrailsアプリケーションにインストールするため。
5.ターミナルで rails g devise User
$ rails g devise user
理由:
deviseで認証するためのモデルを作成するため。
Userモデルを作成するためUserにしているが、他のモデルを使用したいときはそのモデル名で作成。
6.ターミナルで rake db:migrate
$ rake db:migrate
理由:
5.でつくったモデルを元にデータベースをつくるため。
これを行わないとデータベースにUsersテーブルが作成されない。
7.ターミナルで rails g devise:views
$ rails g devise:views
理由:
deviseの用のビューを作るため
おわり。