嗨,我已經使用laravel身份驗證實現了laravel登錄模塊。我使用Auth :: check對用戶進行了身份驗證,並在Auth :: attempt方法中發送了user_name,password。我在用戶表中有狀態欄。我們如何通過Auth :: check在laravel中限制停用用戶4.2
如何限制Auth :: check來驗證狀態爲1的用戶?
嗨,我已經使用laravel身份驗證實現了laravel登錄模塊。我使用Auth :: check對用戶進行了身份驗證,並在Auth :: attempt方法中發送了user_name,password。我在用戶表中有狀態欄。我們如何通過Auth :: check在laravel中限制停用用戶4.2
如何限制Auth :: check來驗證狀態爲1的用戶?
只需將狀態字段作爲確認之一即可。你可以這樣做:
$credentials = array(
'username' => $input['email'],
'password' => $input['password'],
'status' => 1
);
if (Auth::attempt($credentials))
{
// User status is 1 and password was correct
}
如果你想明確告訴他們不是活躍用戶 - 您可以使用此跟進:
if (Auth::validate(['username' => $input['email'], 'password' => $input['password'], 'status' => 0]))
{
return echo ('you are not active');
}
您可以添加附加條件到驗證::嘗試方法
if (Auth::attempt(array('email' => $email, 'password' => $password, 'status' => 1)))
{
//user is logged in (email and password matched, status is 1)
}
感謝MaGnetas的回答。它真的幫助了我。但「換班」的答案更加詳細,所以我將其作爲我的答案進行了檢查。 – Kiran 2014-12-04 06:58:14
謝謝Mauricio Trajano。我一定會考慮自定義身份驗證。感謝您的建議。 – Kiran 2014-12-04 07:00:32