laravel - 登录后返回调用页面而不是仪表板(Laravel 8)
问题描述
在我的 Laravel 8 应用程序中,登录路径的链接提供在不同的位置,即用户可以从多个页面登录。默认情况下,登录后用户被重定向到仪表板。我正在寻找一种方法将用户返回到他单击登录按钮的同一页面。
我将 Laravel 与 Jetstream 和 Livewire 一起使用。文档说我可以通过更改“public const HOME = '/dashboard';”来做到这一点 到所需的目的地,但在我的情况下,目的地可以不仅仅是一个 url。
我尝试使用 'redirect()->back()' 代替 '/dashboard' 但它不起作用。请帮助需要什么更改。
解决方案
当您将用户重定向到登录页面时保存以前的 url,并且在用户身份验证后将他重定向到与您保存的会话相同的页面上。尝试这个:
public function showLoginForm()
{
session(['link' => url()->previous()]);
return view('auth.login');
}
protected function authenticated(Request $request, $user)
{
return redirect(session('link'));
}
推荐阅读
- machine-learning - 我应该将我的时间序列数据分成帧/块进行二进制分类吗?
- c# - 如何实例化玩家盾牌的预制件,使其看起来像玩家在泡沫中?
- python - 如何使firebase无限循环显示结果
- javascript - ThreeJs - 渲染顺序是否取决于对象创建顺序?
- python - 使用 pyplot 绘制常量函数仅在添加和减去相同值时才有效。为什么?
- javascript - js 日期传入函数
- python - 具有多种颜色的ffmpeg drawtext
- asp.net-core - 在 appsettings.production.json 中,排除部分是什么?
- wordpress - 如何在 wordpress 中集成 AWS 媒体包
- android - 即使在发布模式下构建,DEBUG 也始终为真