我正在使用Laravel Mail API生成可发送邮件并将其发送出去。
一切正常。
但是,我也想在数据库中记录电子邮件正文。
为了做到这一点,我首先需要获取要发送的电子邮件的正文。
在Laravel文档中,他们有一个有关如何在此处向浏览器输出电子邮件的代码段:
https://laravel.com/docs/5.7/mail#previewing-mailables-in-the-browser
但是,我不想将电子邮件输出到浏览器。我想将其存储在变量中。
那可能吗?如果是这样,怎么办?谢谢。
就像文档中建议的那样,我尝试了以下操作:
$body = new App\Mail\InvoicePaid($invoice);
但是,我收到一条错误消息,说我必须实际返回新的Mail对象才能正常工作(即,按照文档中示例代码中的操作进行操作)。
答案 0 :(得分:1)
Previous paragraph告诉您如何捕获渲染的模板:
$html = (new App\Mail\InvoicePaid($invoice))->render();
echo $html;