📅  最后修改于: 2023-12-03 14:51:27.318000             🧑  作者: Mango
在 Laravel 中,你可以在控制器中使用路由器来返回重定向到另一个 URL 的操作。这可以用于在用户执行某些操作后将他们重定向到新的页面。
Laravel 提供了 redirect
方法来轻松地在控制器中返回重定向。以下是一个例子:
public function redirectExample()
{
// 重定向到新的 URL
return redirect('my/new/url');
}
你可以将 redirect
方法传递给你想重定向的 URL。
你还可以将 route
方法传递给你想重定向的路由器名称。以下是一个例子:
public function redirectToRoute()
{
// 重定向到名为 my.route 的路由器
return redirect()->route('my.route');
}
还可以在重定向过程中传递数据。以下是一个例子:
public function redirectWithMessage()
{
// 重定向到新的 URL,并在查询字符串中传递数据
return redirect('my/new/url')->with('message', 'Hello, World!');
}
上面的示例将 message
键和 Hello, World!
值添加到会话中,以便在重定向后使用。
如果您需要在重定向期间添加一些其他操作,例如向用户显示消息或向数据库写入数据,则可以使用 response
方法。
以下是一个例子:
public function redirectWithMessage()
{
// 将消息存储在数据库中
Message::create([
'user_id' => Auth::user()->id,
'message' => 'Hello, World!'
]);
// 重定向到新 URL
return response()->redirectToRoute('my.route')->with('message', 'Hello, World!');
}
上面的示例将消息存储在数据库中,然后使用 redirectToRoute
方法重定向到另一个 URL 并将消息键和值添加到会话中。
Laravel 提供了 redirect
和 response
方法来支持在控制器中返回重定向操作。你可以很容易地使用这些方法来重定向用户到新的 URL,并传递数据。