Laravelで任意の場所(親コントローラー)などで強制リダイレクトする方法。
ふつうのコントローラーだと。アクションで return して上げればリダイレクトできる。
function restore($request){
・
・
return Redirect::route("item.index")->with('message', '登録しました。');
}
ただ、親のコントローラーや別のメソッドからだとできない場合は以下の様にする。
function hoge(){
Redirect::route('item.index')->withErrors(['redirect'=>'エラー発生'])->throwResponse();
}
Redirect(ファザード)の実態は。IlluminateRoutingRedirector で、
route()->withErrors()を実行した戻り値は。IlluminateHttpRedirectResponse
その RedirectResponseクラスのthrowResponse();を実行している流れ。
コメントを残す