我正在使用Laravel 5.8。
我要在身份验证中添加email_verified_at != null OR phone_number_verified_at != null
。
我该怎么做?
答案 0 :(得分:1)
在web.php路由Auth::routes(['verify' => true]);
中使用它
阅读此链接https://laravel.com/docs/5.8/verification#verification-routing
如果您使用的是此邮件,则其支票电子邮件已通过验证,\vendor\laravel\framework\src\Illuminate\Auth
如果您想进一步了解laravel项目public function hasVerifiedEmail()
{
return ! is_null($this->email_verified_at);
}
中的此路径,并查看特征MustVerifyEmail
public function hasVerifiedEmail()
{
if (!is_null($this->phone_verified_at) && !is_null($this->email_verified_at)) {
return 1;
}
}
您正在尝试同时检查
一种方法
VerificationController
2.step转到 /**
* Show the email verification notice.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function show(Request $request)
{
$user = Auth::user();
if (is_null($user->email_verified_at)) {
return view('auth.verify');
}elseif (is_null($user->phone_verified_at)) {
return redirect("phone_verify");
}else{
return redirect($this->redirectPath());
}
}
web.php
转到Route::get('phone_verify',function(){
dd("not verify");
});
创建电话验证路径
#standardSQL
SELECT id, col_1,
ARRAY(SELECT AS STRUCT col_2, col_3, col_4
FROM UNNEST(col_2) col_2 WITH OFFSET
JOIN UNNEST(col_3) col_3 WITH OFFSET USING(OFFSET)
JOIN UNNEST(col_4) col_4 WITH OFFSET USING(OFFSET)
) comb_col,
col_5
FROM `project.dataset.table`
答案 1 :(得分:0)
在LoginController中添加attemptLogin
函数,此函数由laravel调用以进行身份验证
protected function attemptLogin(Request $request)
{
$valid = $this->guard()->attempt(
$this->credentials($request), $request->filled('remember')
);
if($valid){
$user = $this->guard()->user();
if($user->email_verified_at == null && $user->phone_number_verified_at == null ){
$this->guard()->logout();
$request->session()->invalidate();
return false;
}
}
return true;
}