Lumen和Laravel无法登录用户

时间:2016-11-21 13:16:35

标签: php laravel lumen

首先为基本问题道歉,但我在Laravel和Lumen都是新手,并试图学习它。

我正在尝试使用Lumen登录用户,但我遇到了错误。我想写的是

if (auth()->attempt(...) { }

还尝试了另一种方法

if (\Auth::attempt(...) { }

错误的两种方式

  

传递给Illuminate \ Auth \ EloquentUserProvider :: validateCredentials()的参数1必须是Illuminate \ Contracts \ Auth \ Authenticatable的实例,App \ User的实例

我也确定我验证了表单中的所有输入。

2 个答案:

答案 0 :(得分:2)

您的User模型似乎扩展了Model而不是Authenticatable。您的User模型应如下所示:

<?php

namespace App;

use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable
{
    ....

答案 1 :(得分:1)

确保您没有忘记在模型中实现Authenticatable,例如:

use Illuminate\Auth\Authenticatable;
use Illuminate\Contracts\Auth\Authenticatable as AuthenticatableContract; 

和Model实现它

class User extends Model implements AuthenticatableContract {
   use Authenticatable;
         ... 
}