LoginSignup
31
30

More than 3 years have passed since last update.

gem deviseをインストールする手順と理由

Last updated at Posted at 2019-10-19

Ruby on Railsでのアプリケーション作成時にgemのdeviseを使って、サインアップやログイン、ログアウトなどのユーザー管理を導入する。
その時の手順と、その手順の意味をメモ。

前提:gemを新しく追加する時の流れ

  1. Gemfileを更新
  2. bundle installを実行
  3. Gemfile.lockが自動的に更新される

本題:gem deviseインストールの流れ

1.Gemfileに devise を追記

Gemfile
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の用のビューを作るため

おわり。

31
30
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
31
30