参考図書
参考記事
Laravelにはリダイレクト処理を扱う2つのインスタンスがある。
- Illuminate\Http\RedirectResponseクラスのインスタンス
- Illuminate\routing\Redirectorクラスのインスタンス
Illuminate\Http\RedirectResponseクラスのインスタンス
メソッドチェーンとして使える($this
自身を戻り値とする)ものだけ。
入力データを付加する
$response->withInput()
送られてきたフォームの値を付加してリダイレクト
バリデータのエラーを付加する
$response->withErrors(
MessageProvider)
エラーメッセージを付加してリダイレクトするもの。
引数には、MessageProviderというインターフェイスを用意する?
クッキーを付与する
$response->withCookie('Cookie配列')
クッキーデータを複数付加してリダイレクトするもの。
Illuminate\routing\Redirectorクラスのインスタンス
ルートおよびアクションを指定
redirect()->route(ルート名,配列)
redirect()->action(アクションの指定,配列)
routeはweb.phpにルート情報として記述したものを指定。
actionはHelloController@index
のようにコントローラーのアクションを指定
JSONデータを返す
redirect()->json(テキスト)
指定のJSONデータを出力させることができる
ファイルを返す
redirect()->download(ファイルパス)
redirect()->file(ファイルパス)
ファイルをダウンロードしたり表示するもの。