Login only if user is active using Laravel

前端 未结 19 1862
孤城傲影
孤城傲影 2020-11-30 23:26

I\'m currently working on my Laravel app and to prevent spam I decided that only active users are able to login. I\'m currently using Laravel\'s login system just like in La

19条回答
  •  囚心锁ツ
    2020-11-30 23:51

      protected function sendLoginResponse(Request $request) {
      $request->session()->regenerate();
      $this->clearLoginAttempts($request);
      if ($response = $this->authenticated($request, $this->guard()->user())) {
          return $response;
      }
      $user = $this->guard()->user();
      if($user->is_active) {
        return $request->wantsJson() ? new JsonResponse([], 204) : redirect()->intended($this->redirectPath());
      } else {
        $request->session()->flush();
        return redirect()->route('login')->with('error', 'This account is not activated. Please contact the administrator.');
      }    
    }
    

    I put this function inside Auth\LoginController

提交回复
热议问题