#php #laravel #authentication #cartalyst-sentinel
#php #ларавель #аутентификация #карталитет-страж
Вопрос:
Я пытаюсь использовать строительные леса, созданные artisan make:auth
командой для laravel 5.3, но заменить функции там на Sentinel. В методе create RegisterController я вызываю sentinel следующим образом:
return Sentinel::register([
'email' => $data['email'],
'password' => $data['password'],
]);
Но я получаю сообщение об ошибке при попытке запустить это.
FatalThrowableError in SessionGuard.php line 441:
Type error: Argument 1 passed to IlluminateAuthSessionGuard::login() must be an
instance of IlluminateContractsAuthAuthenticatable, instance of
CartalystSentinelUsersEloquentUser given,
called in /Applications/MAMP/htdocs/*****/vendor/laravel/framework/src/Illuminate/Foundation/Auth/RegistersUsers.php on line 35
Я предполагаю, что это связано с тем, что метод Sentinel::register не возвращает экземпляр этого пользователя. Как бы я мог получить экземпляр пользователя Sentinel обратно из создания в этом случае?
Ответ №1:
Я думаю, что лучшим выбором было бы никогда не путать эти два, если вы хотите использовать sentinel, тогда пусть он летит соло, не вижу смысла смешивать эти два вместе.