我想编辑身份验证并添加其他条件
用于检查用户是否为活动或...
哪里可以编辑authcontroller代码?
答案 0 :(得分:1)
首先,您需要status
表中的users
列,将用户标记为有效或无效。
要在登录期间检查用户状态,您需要修改此文件:
project_folder\vendor\laravel\framework\src\Illuminate\Foundation\Auth\AuthenticatesUsers.php
您可以更改validateLogin()
方法。我假设,对于活跃用户,状态代码为1
,0
表示非活动用户。您的代码应如下所示:
protected function validateLogin(Request $request)
{
$this->validate($request, [
$this->loginUsername() => 'required', 'password' => 'required', 'status' => 1,
]);
}
答案 1 :(得分:1)
在Auth \ AuthController.php中,添加此功能(我假设用户状态的列名是" is_active"):
public function authenticated($request, $user) {
if ($user->is_active != 'Y') {
Auth::logout();
return redirect('login')->withErrors([
$this->loginUsername() => 'Your '.$this->loginUsername().' is not active. Please contact Administrators'
]);
}else {
return redirect()->intended($this->redirectPath());
}
}