我有一个AuthController,我已经扩展了getCredentials方法,因此用户需要既可以登录也可以是活动的。这是方法:
protected function getCredentials(Request $request) {
$credentials = $request->only($this->loginUsername(), 'password');
return array_add($credentials, 'status', '1');
}
我还希望失败的登录消息不同,具体取决于用户是否处于活动状态,因此用户知道他的用户名/密码是否失败,或者仅仅是因为他还没有激活他的帐户。
我可以覆盖AuthenticatesUser
特征的登录方法,但复制所有逻辑只是为了改变它似乎有点过分。
我可以扩展sendFailedLoginResponse
方法,根据之前的Auth :: guard-> attempt()调用进行某种验证吗?我的意思是,这种方法是否留下了任何信息,这使得我可以在调用之后知道是什么让尝试返回假?
或者我如何处理这个问题,而不必完全覆盖一个方法来进行简单的验证?
谢谢。
答案 0 :(得分:0)
public function authenticated(Request $request, User $user ) {
// The user was authenticated check if it the active column is true or not
if($user->active == false){
//Store some flash message here saying he's not account is not active
//Log him out after.
Auth::logout();
}
return redirect()->intended( $this->redirectPath() );
}