【发布时间】:2018-08-29 13:55:21
【问题描述】:
我使用 laravel 5.6 并成功将视图作为电子邮件发送。
我使用这个代码:
Mail::to($user->email)->send(new Welcome($user));
我唯一的问题是密码重置。我知道我可以自定义一些模板,但是如何覆盖默认的电子邮件模板并发送我自己的视图?
我尝试编写自己的 ResetPasswordNotification :
<?php
namespace App\Notifications;
use Illuminate\Auth\Notifications\ResetPassword;
use Illuminate\Notifications\Messages\MailMessage;
class ResetPasswordNotification extends ResetPassword
{
/**
* Build the mail representation of the notification.
*
* @param mixed $notifiable
* @return \Illuminate\Notifications\Messages\MailMessage
*/
public function toMail($notifiable)
{
if (static::$toMailCallback) {
return call_user_func(static::$toMailCallback, $notifiable, $this->token);
}
return (new MailMessage)
->line('Vous recevez cet email car une demande de modification du mot de passe pour votre compte a été initialisée.')
->action('Réinitialiser le mot de passe', url(config('app.url').route('password.reset', $this->token, false)))
->line('Si vous n\'êtes pas à l\'origine de cette demande, merci de contacter l\'équipe du site.');
}
}
但我只能翻译电子邮件。我想要的是根据自己的模板发送自己的视图。
有可能吗?
感谢您的帮助。
【问题讨论】:
-
您可以使用自定义视图返回您自己的可邮寄类,而不是返回
MailMessage。
标签: laravel