来自Laravel文档:
默认排队
如果您有希望始终排队的可邮寄类,则 可以在类上实现 ShouldQueue 合约。现在,即使你 邮寄时调用 send 方法,可邮寄邮件仍会排队 因为它执行了合同
有没有办法默认队列电子邮件,即使在调用 Mail:send 时,就像在 Laravel 中但在 Lumen 中一样?
我尝试在我的可邮寄设备上实现 ShouldQueue 合约,但它们仍然会立即发送,我的队列正在工作,因为我在其他情况下明确使用它们。
首先,确保文件中有.env
sync
以外的QUEUE_DRIVER
。使用database
、beanstalkd
或redis
驱动程序。
其次,如果收到queue is null
错误,必须先绑定队列。
app('queue');
Mail::to($email)->send($mailable);
或者如果您的可邮寄邮件没有实现 ShouldQueue
app('queue');
Mail::to($email)->queue($mailable);
源