письмо с подтверждением, которое поставляется с laravel 5.7. Как и где мне нужно его поменять? Я искал по всему Интернету, но, поскольку это новая функция в 5.7, я не смог найти ответа. Не могли бы вы мне помочь? Заранее спасибо.
в основном этот класс находится в Illuminate \ Auth \ Notifications
я хочу переопределить один из методов:
class VerifyEmail extends Notification
{
// i wish i could override this method
protected function verificationUrl($notifiable)
{
return URL::temporarySignedRoute('verification.verify', Carbon::now()->addMinutes(60), ['id' => $notifiable->getKey()]);
}
}






Поскольку ваша модель User использует Illuminate\Auth\MustVerifyEmail, вы можете переопределить метод sendEmailVerificationNotification, который является методом, который уведомляет созданного пользователя, вызывая метод notify и передает в качестве параметра новый экземпляр класса Notifications\MustVerifyEmail.
Вы можете создать собственное уведомление, которое будет передано как параметр в $this->notify() в методе sendEmailVerificationNotification в вашей модели User:
public function sendEmailVerificationNotification()
{
$this->notify(new App\Notifications\CustomVerifyEmail);
}
А в уведомлении CustomVerifyEmail вы можете указать route, через который будет выполняться проверка, и все параметры, которые она будет принимать.
Когда новый пользователь регистрируется, событие Illuminate\Auth\Events\Registered генерируется в App\Http\Controllers\Auth\RegisterController, и это событие имеет слушателя Illuminate\Auth\Listeners\SendEmailVerificationNotification, который зарегистрирован в App\Providers\EventServiceProvider:
protected $listen = [
Registered::class => [
SendEmailVerificationNotification::class,
]
];
Этот слушатель проверяет, является ли $user, который передается в качестве параметра new Registered($user = $this->create($request->all())) в аутентификации Laravel по умолчанию App\Http\Controllers\Auth\RegisterController, экземпляром Illuminate\Contracts\Auth\MustVerifyEmail, который является чертой, которую Laravel предлагает использовать в модели App\User, когда вы хотите предоставить проверку электронной почты по умолчанию и проверить также то, что $user еще не проверен. Если все это пройдет, он вызовет метод sendEmailVerificationNotification для этого пользователя:
if ($event->user instanceof MustVerifyEmail && !$event->user->hasVerifiedEmail()) {
$event->user->sendEmailVerificationNotification();
}
работает нормально! после внесения вышеуказанных изменений для пользовательской проверки электронной почты @YvesKipondo