📜  laravel 返回重定向到命名路由 - PHP (1)

📅  最后修改于: 2023-12-03 14:43:50.348000             🧑  作者: Mango

Laravel 返回重定向到命名路由 - PHP

在 Laravel 中,我们可以使用 redirect() 函数将用户重定向到指定的 URL 或命名路由。本文将重点介绍如何返回重定向到命名路由。

定义命名路由

routes/web.php 中定义一个命名路由非常容易。下面的示例代码定义了一个名为 home 的命名路由,它指向网站的首页:

Route::get('/', function () {
    return view('welcome');
})->name('home');
返回重定向到命名路由

我们可以使用 route() 函数,根据命名路由的名称生成其对应的 URL。同时,我们可以将该 URL 作为参数,将用户重定向到该命名路由。

下面的代码演示了如何返回重定向到名为 home 的命名路由:

return redirect()->route('home');

当我们在浏览器中访问此代码时,将会自动跳转到定义的首页。

带参数的命名路由

如果你的命名路由需要参数,则可以在 route() 函数中传递额外的参数。如下所示:

// 定义命名路由
Route::get('/blog/{id}', function ($id) {
    return view('blog', ['id' => $id]);
})->name('blog');

// 使用命名路由
return redirect()->route('blog', ['id' => 1]);

在上面的示例中,我们定义了一个名为 blog 的命名路由,它带有一个参数。接着,我们使用 route() 函数将用户重定向到该命名路由时,同时传递了一个 id 参数值为 1。

结论

在将用户重定向到命名路由时,我们可以使用 route() 函数自动生成 URL。使用这种方式,我们可以避免明确指定 URL,从而使得代码更加灵活、易于维护。