Laravel 5.8: как отправить электронное письмо после того, как пользователь нажмет ссылку подтверждения

Я реализовал систему аутентификации с помощью php artisan make:auth и уже настроил проверку электронной почты пользователя с помощью MustVerify из функции laravel.

Я хочу отправить еще одно электронное письмо (приветствие) после того, как пользователь нажмет ссылку подтверждения. Как я могу это сделать?


person Don Noinongyao    schedule 17.03.2019    source источник
comment
почему вы не пытаетесь прослушивать события?   -  person Abolfazl Mohajeri    schedule 17.03.2019


Ответы (1)


Когда пользователь регистрируется, транслируется событие Illuminate/Auth/Events/Verified.

Вы можете использовать эту ремесленную команду для создания слушателя

php artisan make:listener SendWelcomeMail

В слушателе вы можете добавить логику к функции handle($event).

public function handle(Verified $event)
{
    Mail::to($event->user->email)->send(new Greeting());
}

Затем вы регистрируете слушателя с событием в EventServiceProvider

protected $listen = [
    Registered::class => [
        SendEmailVerificationNotification::class,
    ],
    Verified::class => [
        SendWelcomeMail::class
    ],
];
person Daniel    schedule 17.03.2019