Как получить аутентифицированного пользователя в слушателе событий - Laravel - PullRequest
0 голосов
/ 19 мая 2018

Я пытаюсь определить правильный способ получения аутентифицированной информации о пользователе в прослушивателе событий.

Я всегда могу использовать \Auth:user(), который, кажется, работает, но я не думаю, что он будет работать, если я поставлю в очередь слушателя.

Нужно ли добавлять аутентифицированного пользователя в класс событийкак свойство для каждого события, или есть ли другой способ сделать это?

1 Ответ

0 голосов
/ 19 мая 2018

Передайте пользователю через событие .У вас должен быть доступ к фасаду Auth при запуске события.

Событие:

class SomeEvent
{
    // Public so that it will be accessible from the listener
    public $user;

    public function __construct(User $user)
    {
        $this->user = $user;
    }
}

Прослушиватель:

class SomeListener
{
    public function handle(SomeEvent $event)
    {
        // Get the public property `$user` from the event
        $authUser = $event->user;
    }
}

Триггер:

event(new SomeEvent(auth()->user()));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...