Railsのbefore actionをapplicationコントローラに複数書いています。(権限によって利用するものが違うため、例えばbefore actionAとBを呼ぶ、みたいなことをしています)
全てのbefore actionで
redirect_to :login_path
return
のような処理をしていますが、ユーザー削除などをして、before actionがAもBもコケると、AbstractController::DoubleRenderErrorが発生します。
before actionでredirectしてreturnしたら後続の処理は中止されると思いましたが、なぜでしょう。対処法はありますか?
追記
Ruby
1#ApplicationController 2before_action :check_invalid
Ruby
1#UserController 2before_action :hoge 3before_action :huga, only: [:index]
のように、複数コントローラーに跨ってました。
before_actionは「ブロック」「メソッド」など、どのような形式で定義していますでしょうか。コードで示してください。
あなたの回答
tips
プレビュー