2017-02-21 18 views
-1

Я новичок в Laravel, и я сделал систему с пользователями. Аутентификация пользователей выполняется с помощью «php artisan make: auth», у меня есть столбец в таблице users под названием activated; когда activated = 0, я не хочу, чтобы пользователь входил. Немного помогите пожалуйста? Извините, если эта подсказка была скучной.Не разрешать неактивным пользователям войти в систему Laravel

ответ

-1

я найти себя, я просто добавить это myLoginController.php

protected function credentials(Request $request) 
{ 
    $credentials = $request->only($this->username(), 'password'); 
    $credentials['activated'] = 1; 

    return $credentials; 
} 
0

Вы хотите, чтобы справиться с этим, как используя либо AuthenticatesUsers признак или вручную часть вашего AuthController, проверяя ответ от формы входа и возвращает соответствующий ответ:

<?php 

namespace App\Http\Controllers; 

use App; 

use Illuminate\Auth\AuthManager; 
use Illuminate\Foundation\Auth\AuthenticatesUsers; 

/** 
* Class AuthController 
* @package Speechlink\Http\Controllers\Auth 
*/ 
class AuthController extends Controller 
{ 
    use AuthenticatesUsers; 

    /** 
    * Create a new authentication controller instance. 
    * @param AuthManager  $auth 
    */ 
    public function __construct(AuthManager $auth) 
    { 
     $this->auth = $auth; 
    } 

    /** 
    * Deal with the login attempt (overrides the trait's postLogin method) 
    * 
    * @param Request $request 
    * @return $this|\Illuminate\Http\RedirectResponse 
    */ 
    public function postLogin(Request $request) 
    { 
     $this->validate($request, [ 
      'username' => 'required', 
      'password' => 'required', 
     ]); 

     $credentials = $request->only('username', 'password'); 

     if ($this->auth->attempt($credentials)) { 
      // We authenticated so continue 
      return redirect('path/to/logged_in'); 
     } else { 
      // We failed authentication so redirect somewhere else 
      return redirect('path/to/disabled_user'); 
     } 

    } 
}