在我的带有默认身份验证系统的Laravel 5.5应用程序中,我正在尝试实现这样的登录过程,
1. is_approved
表中有一个users
字段,默认为0;
2.如果管理员批准用户,则该用户将为1,用户可以登录。
3.注册后,用户将被重定向到登录页面,并显示“你 已成功注册。请等待管理员批准“。
因此,当用户注册时,他应该被重定向到登录页面而不是家中,如果他尝试使用电子邮件和密码登录登录页面,则应该说“你还没有被批准!”。
我需要在Laravel身份验证系统中对此进行修改吗?
答案 0 :(得分:2)
我覆盖并修改了register
中的RegisterController
方法,
public function register(Request $request)
{
$this->validator($request->all())->validate();
event(new Registered($user = $this->create($request->all())));
return redirect()->back()->with('success', 'You have been successfully registered!. Please wait for the admin approval');
}
并在我的LoginController
中覆盖并修改credentials
方法,
public function credentials(Request $request)
{
return [
'email' => $request->email,
'password' => $request->password,
'is_approved' => 1,
];
}
它完美运作!