我们如何通过Auth :: check in laravel 4.2来限制已停用的用户

Kir*_*ran 3 php authentication laravel

嗨,我已经使用laravel身份验证实现了laravel登录模块.我使用Auth :: check对用户进行身份验证,并在Auth :: attempt方法中发送user_name,password.我在users表中有status列.

如何限制Auth :: check以仅验证状态为1的用户?

Lau*_*nce 6

只需将状态字段作为确认之一即可.你可以这样做:

$credentials = array(
        'username' => $input['email'],
        'password' => $input['password'],
        'status' => 1
    );

    if (Auth::attempt($credentials)) 
    {
        // User status is 1 and password was correct
    }
Run Code Online (Sandbox Code Playgroud)

如果您想明确告诉用户他们没有活动 - 您可以通过以下方式跟进:

    if (Auth::validate(['username' => $input['email'], 'password' => $input['password'], 'status' => 0]))
    {
        return echo ('you are not active');
    }
Run Code Online (Sandbox Code Playgroud)