Laravel 拉威尔认证

Laravel 拉威尔认证,laravel,authentication,login,model,Laravel,Authentication,Login,Model,我是拉威尔的初学者 我想用: Auth::login(users::find(1)) 结果: 类型错误: 传递给Lightning\Auth\SessionGuard::login()的参数1必须是 Lightlight\Contracts\Auth\Authenticatable的实例,的实例 应用程序\指定的用户 I将模型更改为扩展Authenticatable,而不是模型。 我还将Auth语句更改为: Auth::login(users::where('id', 1)) 结果: 类型错

我是拉威尔的初学者

我想用:

Auth::login(users::find(1))
结果: 类型错误:

传递给Lightning\Auth\SessionGuard::login()的参数1必须是 Lightlight\Contracts\Auth\Authenticatable的实例,的实例 应用程序\指定的用户

I将模型更改为扩展Authenticatable,而不是模型。 我还将Auth语句更改为:

Auth::login(users::where('id', 1))
结果: 类型错误:

传递给Illumb\Auth\SessionGuard::login()的参数1必须 实现接口Illumb\Contracts\Auth\Authenticatable, 给定了Illumb\Database\Eloquent\Builder的实例


我想知道您是否能帮助我“感谢”

您应该在用户模型类中实现illumb\Contracts\Auth\Authenticatable以通过Auth::login

对用户实例进行身份验证

如果需要将现有用户实例登录到应用程序中, 您可以使用用户实例调用login方法。给定对象 必须是执行 照亮\Contracts\Auth\authenticable contract。当然是 Laravel附带的应用\用户模型已经实现了这一点 接口:

Auth::login($user)

或者您可以简单地执行以下操作:

Auth::loginUsingId(1);