【发布时间】:2018-01-11 14:44:03
【问题描述】:
当我使用 Mail::send
$email = 'my@email.com';
$name = 'My Name';
$invoice = InvoicePdf::generate($invoice_id); // generates PDF as raw data
Mail::send('mail.template', null, function($message) use ($name, $email, $invoice) {
$message->to($email, $name);
$message->subject('Thank you for your order!');
$message->attachData($invoicePdf, 'invoice.pdf', ['mime' => 'application/pdf']);
});
它工作正常,并生成了一封带有正确 PDF 附件的电子邮件。
但是,如果我将 Mail::send 更改为 Mail::queue,则会收到以下错误:
Unable to JSON encode payload. Error code: 5
/var/www/html/october/vendor/laravel/framework/src/Illuminate/Queue/Queue.php line 90
如果我取出 $message->attachData(); 行,那么它甚至可以与 Mail::queue 一起使用,因此附件中的原始数据似乎导致队列出现问题,但相关的 October 或 Laravel 文档中没有任何内容关于如何处理这个问题。
【问题讨论】:
标签: laravel laravel-5.1 octobercms