我在Laravel中使用Sentinel进行用户身份验证。
我已按照this指南使用用户名登录,但它似乎无法正常工作!
我有一个测试路由来测试登录,如下所示:
Route::get('/test-login', function()
{
Sentinel::authenticate([
'login' => 'nvaughan84',
'password' => 'password',
]);
//check login details
if($user = Sentinel::check())
{
print_r($user);
}
else
{
echo 'Not Logged';
}
});
我创建了一个扩展SentinelUser的用户模型,如下所示:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use Cartalyst\Sentinel\Users\EloquentUser as SentinelUser;
class Users extends SentinelUser
{
protected $fillable = [
'email',
'username',
'password',
'last_name',
'first_name',
'permissions',
];
protected $loginNames = ['username'];
}
我已经更新了我的哨兵配置:
'users' => [
'model' => 'App\Users',
],
如果我添加&#39;用户名&#39;到Sentinel类中的$ loginNames数组它可以工作但不使用扩展Sentinel类的Users类。
有人可以告诉我,我可能做错了吗?
谢谢:)
答案 0 :(得分:0)
解决了它。
我愚蠢地还是
use Cartalyst\Sentinel\Native\Facades\Sentinel;
位于我的routes.php文件的顶部,因此它使用了这个而不是我的新用户类!