#対象者
- deviseを実装済の方
- 管理者・ユーザーで2つのdeviseを実装した方
- ログイン・ログアウト後の動作を考えている方
#目的
- devis実装後にログイン・ログアウト後の遷移先を指定する条件を作ること
#実際の手順と実例
###1.前提
- devise実装済(実装方法は下記の通り)
- Admin/User2つのモデルを作成している
###2.今までの方法(devise1つだったとき)
private
def after_sign_in_path_for(resoure)
root_path
end
````
###3.新しい実装方法(devise 2つ実装した場合)
````application_controller.rb
private
def after_sign_in_path_for(resource_or_scope)
if resource_or_scope.is_a?(Admin)
admins_orders_top_path
else
root_path
end
end
def
after_sign_out_path_for(resource_or_scope)
if resource_or_scope == :user
root_path
elsif resource_or_scope == :admin
new_admin_session_path
else
root_path
end
end
````
上記では2つ指定しています
1. サインイン後
* Admin → 管理者ルートパスへ(Top)
* User → ルートパス(Top)
1. サインアップ後
* Admin → 管理者ログインへ
* User → ルートパス(Top)
####投稿者コメント
PF作成で管理者とUser分けて実装していたのでこちらを記事にしました。早速チーム開発時の復習ができて記憶に定着できそうです。
####My Profile
プログラミング学習歴3ヶ月目のアカウントです!
プログラミングスクールで学んだ内容や自分が躓いた箇所等のアウトプットの為に発信しています。
また、プログラミング初学者の方にわかりやすく、簡潔にまとめて情報共有できればと考えています。
もし、投稿した記事の中に誤り等ございましたら、コメント欄でご教授いただけると幸いです。