Я использую Sentinel от Cartalyst для аутентификации с помощью PHP. Традиционный способ аутентификации — использование электронной почты и пароля, как мы можем прочитать в их документации:
$credentials = [
'email' => '[email protected]',
'password' => 'password',
];
Sentinel::authenticate($credentials);
По умолчанию пользователи Таблица, предоставленная библиотекой, выглядит так:
id | email | password | permissions |last_login | first_name | created_at | updated_at
Я хочу добавить имя пользователя колонка и аутентификация с использованием Sentinel имя пользователя а также пароль. Является ли это возможным?
Вы можете изменить этот пример здесь
http://naomiaro.com/2015/07/08/multiple-login-attributes-with-sentinel-and-laravel/
В вашей модели Users вы должны переопределить атрибут $ loginNames и добавить имя пользователя к атрибуту $ fillable.
use Cartalyst\Sentinel\Users\EloquentUser as SentinelUser;
class User extends SentinelUser {
protected $fillable = [
'email',
'username',
'password',
'last_name',
'first_name',
'permissions',
];
protected $loginNames = ['username'];
}
Sentinel::authenticate([
'username' => 'fake',
'password' => 'password'
]);
Других решений пока нет …