我正在使用Laravel 5提供的身份验证功能并尝试使用有效凭据登录,但它不断向我抛出无效的用户错误。
这是我的帖子登录。
public function postLogin(Request $request)
{
$this->validate($request, [
'email' => 'required|email', 'password' => 'required',
]);
$credentials = $request->only('email', 'password');
if ($this->auth->attempt($credentials, $request->has('remember')))
{
if($this->auth->attempt(['active' => 1]))
{
return redirect()->intended($this->redirectPath());
}
else
{
return redirect('aut.reset');
}
}
return redirect()->back()
->withInput($request->only('email', 'remember'))
->withErrors([
'email' => $this->getFailedLoginMesssage(),
]);
}
我的模型包含用户名、电子邮件、密码、活动client_code字段。
您正在尝试两次,请改用以下代码:
$creds = ['email' => $request->get('email'),
'password' => $request->get('email'),
'active' => 1]; //your custom parameters
if ($this->auth->attempt($credentials, $request->has('remember')))
{
return redirect()->intended($this->redirectPath());
}
下次阅读手册,它在那里...
使用条件对用户进行身份验证
您还可以向身份验证查询添加额外的条件:
if (Auth::attempt(['email' => $email, 'password' => $password, 'active' => 1]))
{
// The user is active, not suspended, and exists.
}