Redirectでrouteを指定してパラメータも渡したい
Laravelでredirectをする時に、routeで名前を指定して逆引きしたいときがあります。
またその際のパラメータも一緒に渡したいときがあるのでその時の方法をご紹介します。
web.phpでルートの名前を指定する
まずは、web.phpでルートの名前を指定しましょう!
name(‘sample’)でルートの名前を指定することができます。
routes/web.php
Route::get('path/to/sample', 'SampleController@showSample')->name('sample');
詳細は、Laravelの公式サイトに詳しく紹介されていますのでこちらを参照ください。
Redirectでrouteを指定してパラメータも渡す方法
次はコントローラーなどで、実際にredirect時にrouteを指定してパラメータを渡す方法です。
ルート名の指定は、route(‘sample’)でURLを逆引きすることができます。
パラメータを渡す時は、配列で以下のように渡せばOKです。
return redirect(route('sample', [
'param1' => $param1,
'param2' => $param2,
]));
コメント