его мгновенно зарегистрировать, чтобы у него был user id, запись в базе и все атрибуты аутентифицрованного пользователя. Как сделать?
Возможный вариант: написать middleware, где автоматически регистрировать гостей:
if (Auth::guest()) {
$user = User::create();
Auth::login($user, true);
}
Что думаете? Какие ещё варианты могут быть? Возможно, эта функциональность уже есть "из коробки" или в каком-то популярном пакете, которым все пользуются, а я не знаю?
не надо регистрировать пользователя при входе на сайт, это плохая практика, у вас база раздуется до неимоверных размеров и будет 99% мертвых "пользователей". если вы хотите бесшовную процедуру заказа например, когда пользователь без регистрации что-то тыкает, выбирает, и только потом регистрируется - храните данные в сессии либо в куке. если уж так хочется работать с экземпляром модели пользователя, создайте модель, сериализуйте ее и положите в куку/сессию
Обсуждают сегодня