我发送用户电子邮件,然后发送管理员报告。我想更改管理员通知的主题。
为此,我在vendor / mail / themes目录中定义了一个自定义css模板。
我尝试按照这个例子,虽然它适用于Mailables:
https://laravel-news.com/email-themes
class AdminReport extends Notification
{
use Queueable;
protected $theme = 'adminemail';
但这不会改变任何主题。
我还尝试在发送通知之前更改主题,但它不起作用:
config([ "mail.markdown.theme" => "adminemail" ]);
当我在发出第一个用户通知之前设置配置时,更改主题确实有效。
有谁知道正确的方法吗?
答案 0 :(得分:1)
从Laravel v5.3.7开始Mailables can also be passed to Notifications。因此,为您的电子邮件创建一个Mailable,然后将mailable传递给toMail()
方法:
class AdminReport extends Mailable
{
protected $theme = 'my-theme';
...
}
-
class AdminReport extends Notification
{
...
public function toMail($notifiable)
{
return (new App\Mailables\AdminReport)->to($notifiable->email);
}
}