在Laravel 5中更改密码重置重定向链接

Pet*_*lev 4 php passwords redirect laravel

我正在按照关于使用Laravel设置身份验证的教程进行操作,除了一点之外,我主要是在那里.

当我发出密码重置请求时,我收到了一封发给我的电子邮件,如果我点击电子邮件中的链接,我会看到一个表单然后我会正确填写并希望重定向回/仪表板,不过这个永远不会发生,而是重定向到/ home.

我无法提供任何代码,因为Laravel在幕后完成了所有工作.任何帮助表示赞赏:).

ale*_*ell 9

这是因为您希望重置密码控制器将您重定向到/dashboard成功重置.也许我错了,但我无法在代码中的任何地方看到指定的内容(正如您所说,基于新的Laravel安装).

为了证明这一点,让我们遵循以下代码:

默认情况下,在新的Laravel安装中,您可以PasswordControllerapp/Http/Controllers/Auth/目录中获得.在该文件的第21行,它"包含"该ResetsPasswords特征.那么让我们来看看这个特质.

正如您所看到的,在postReset方法(运行最终实际密码重置的方法)中,在第95行,重定向位置被推迟到redirectPath,如您所见,在第131行,代码专门转发用户到/home如果没有redirectPathredirectTo属性存在控制器上.

因此,要手动设置重定向位置,只需protected $redirectPath = '/dashboard';在您的Http\Controllers\Auth\PasswordController班级中设置即可.

但是,在您链接到的页面上,请参阅官方文档中的"重置密码后"部分.


Tim*_*Tim 7

你必须设置一个属性redirectPathPasswordController它用于重定向登录后,当您使用的是Laravel内置功能.

应该是这样的:

# PasswordController.php

protected $redirectPath = '/dashboard';
Run Code Online (Sandbox Code Playgroud)