Ruby on Railsチュートリアルを一通り終えた程度の初心者です。
ログインチェックなどの処理は、色んな場所(コントローラ)で共通して使うものだと気付きました。
ruby
1class UsersController < ApplicationController 2 before_action :logged_in_user, only: [:edit, :update] 3 before_action :correct_user, only: [:edit, :update] 4 5 6 private 7 8 # beforeアクション ログイン済みユーザーかどうか確認 9 def logged_in_user 10 unless logged_in? 11 store_location 12 flash[:danger] = "ログインしてください" 13 redirect_to login_url 14 end 15 end 16 17 # beforeアクション 正しいユーザーかどうか確認 18 def correct_user 19 @user = User.find(params[:id]) 20 redirect_to(root_url) unless @user == current_user 21 end 22 23end 24
この場合、基底コントローラクラスである「ApplicationControllerクラス」に置くべきでしょうか?
それともconcernsに置くべきでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/19 01:56