LoginSignup
2
1

More than 3 years have passed since last update.

【Laravel】定義した「名前付きルート」からのURL生成方法

Posted at

名前付きルートへのURLを生成するには

ルート定義ファイルroutes/web.phpに名前付きルートの設定をしていれば、その名前をグローバルなroute関数を使用することで、URLを生成したり、設定した名前のルートへリダイレクトできたりします。

// URLの生成
$url = route('profile');

// リダイレクトの生成
return redirect()->route('profile');

上記のように、コントローラ内とかで利用可能です。
ルート定義で名前付きルートをするだけで、リダイレクトの文が、とても見やすくなります。ぜひ活用してみましょう。

パラメータも付け加えて、URLを生成することもできる

ちなみに、名前付きルートを設定したルートで、なおかつ、パラメータも定義してある場合は、route関数の第2引数にパラメータを渡すことができます。

routes/web.php
Route::get('user/{id}/profile', function ($id) {
    //
})->name('profile');

上記のように、ルート定義でprofileという名前を指定のルートにつけて

HogeController.php
$url = route('profile', ['id' => 1]);
// $urlには「 /user/1/profile 」

コントローラでパラメータを渡してあげて、URLを生成することができます。

参考文献:https://readouble.com/laravel/7.x/ja/routing.html

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1