【rails】deviseを使ったuser管理機能の実装
gemのdeviseを使って、サインアウトやサインインなどの機能を追加する。
- Gemfileに"devise"を記載
- bundle install
- rails g devise:install(deviseの設定ファイルをrailsアプリケーションにインストールするコマンド)
- rails g devise User(モデルの作成)
- rake db:migrate(migrationfileの読み込み)
http://localhost:3000/users/sign_in
この時点で最低限のログインページの実装
- rails g devise:views user (deviseに対応してviewの作成)
- rails g devise:controllers user(deviseに対応してcontrollerの作成)
deviseで使用できるメソッド(モデル名にuserを指定している場合)
メソッド | 機能 |
---|---|
before_action :authenticate_user! | コントローラーに設定して、ログイン済みユーザーのみにアクセス許可をする |
user_singed_in? | ユーザーがサインしているかを判定する |
current_user | サインインしているユーザーを取得する |
user_session | ユーザーのセッション情報にアクセスする |
before_action :authenticate_user!
コントローラーの先頭に記載することで、処理が行われる前にログインしているかを判別させ、ログインユーザー以外のアクセスができないように設定します。
Author And Source
この問題について(【rails】deviseを使ったuser管理機能の実装), 我々は、より多くの情報をここで見つけました https://qiita.com/yoshinoritera55/items/9be773a80c63db3b217f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .