我参与了一个使用Laravel 5.4和内置身份验证的网站。
我添加了一个“忘记密码”链接,该链接显示通过电子邮件发送密码的ResetPasswordController @ showLinkRequestForm。 在提交时重置链接,然后在提交时ResetPasswordController @ showResetForm重定向到登录页面。
我的问题是,我们有两个不同的用户-客户端和管理员。我有能力确定哪个是 通过注册的电子邮件地址,但是我希望重置密码后的重定向对于每种类型都不同 (客户端='/'和admin ='/ admin')。 怎么做?
答案 0 :(得分:1)
如果您在控制器中使用ResetsPasswords
特性,则可以创建自己的redirectTo()
方法,该方法将被调用以重定向用户:
// import the needed trait
use Illuminate\Foundation\Auth\ResetsPasswords;
class YourResetPasswordController {
// use the needed trait
use ResetsPasswords;
// override the method that redirects the user
public function redirectTo()
{
if (auth()->user()->isAdmin()) {
return redirect('/admin');
} else {
return redirect('/');
}
}
}
让我知道它是否对您有帮助:)