Выборочная проверка электронной почты с использованием другого шаблона Laravel 5.7 - PullRequest
0 голосов
/ 08 января 2020

Я пытаюсь отправить два разных подтверждения по электронной почте (включая шаблон), в зависимости от того, какой пользователь зарегистрировался. Я хотел бы иметь два разных шаблона проверки электронной почты, которые я передаю пользователю и отображаю шаблон уценки. Но я не могу заставить работать настройку. Я буквально перепробовал все ответы на stackoverflow и на laracast и medium . К сожалению, не повезло!

Итак, что я сделал до сих пор:

1 ) В AppServiceProvider при загрузке я добавил приведенный ниже код, который привел к этой ошибке

Call to undefined method App\Providers\AppServiceProvider::verificationUrl()


use Illuminate\Auth\Notifications\VerifyEmail;
use Illuminate\Notifications\Messages\MailMessage;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
      \Blade::setEchoFormat('e(utf8_encode(%s))');

    VerifyEmail::toMailUsing(function ($notifiable) {
            $verifyUrl = $this->verificationUrl($notifiable);
            return (new MailMessage)
                ->subject('Verify your email address')
                ->markdown('emails.verify', ['url' => $verifyUrl]);
        });
    }
  }

2) 2-е, что я сделал, это добавление public function sendEmailVerificationNotification() к модели пользователя

          public function sendEmailVerificationNotification()
                {

    \Illuminate\Auth\Notifications\VerifyEmail::toMailUsing(function ($notifiable) {

        // this is what is currently being done
        // adjust for your needs

        return (new \Illuminate\Notifications\Messages\MailMessage)
            ->subject(\Lang::getFromJson('Verify Email Address'))
            ->line(\Lang::getFromJson('Please click the button below to verify your email address.'))
            ->action(
                \Lang::getFromJson('Verify Email Address'),
                $this->verificationUrl($notifiable)
            )
            ->line(\Lang::getFromJson('If you did not create an account, no further action is required.'));
                });

}

Ничего не отправляется и ошибки нет. любое другое решение, которое я пробовал, тоже было тупиком, и никакое электронное письмо не было отправлено или будет выдано сообщение об ошибке.

...