我有一个用户表,其中包含用户的每个详细信息,包括一个名为“ isActive”的字段,该字段是布尔值。
如果“ isActive = 1”,我想登录用户,如果“ isActive = 0”,我也想将用户重定向回登录页面。
我的代码如下:
public function postSignIn(Request $request)
{
$this->validate($request, [
'username' => 'required',
'password' => 'required'
]);
if(Auth::attempt(['username' => $request['username'], 'password' => $request['password']])) {
return redirect()->route('home');
}
}
上面的代码使我可以正常签名。带有或不带有isActive字段的调用。
根据文档,
如果需要,除了用户的电子邮件或用户名和密码外,还可以在身份验证查询中添加其他条件。例如,我们可以验证用户被标记为“活动”:
在您的情况下,您只需要在数组中添加'isActive'=> 1。
您的代码应为:-
if (Auth::attempt(['username' => $request['username'], 'password' => $request['password'],'isActive' => 1])) {
// The user is active, not suspended, and exists.
}
else{
// The user is Inactive, suspended, or not exists.
return redirect()->route('home');
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句