我正在尝试使用Laravel-5对邮件进行排队。我使用的代码如下所示。我本以为邮件会存储在数据库中的‘job’表中,但它是立即发送的。
Mail::queue('emails.orderthankyou', ['first_name' => 'My Name'], function ($m) {
$m->to('me@myemail.com')->subject('Test');
});你知道这里会出什么问题吗?
发布于 2015-07-09 19:14:14
您可能希望改用Mail::later。
http://laravel.com/docs/5.1/mail
Mail::later(5, 'emails.orderthankyou', ['first_name' => 'My Name'], function ($m) {
$m->to('me@myemail.com')->subject('Test');
});发布于 2015-07-23 00:50:04
您可能正在使用sync驱动程序(在配置/队列.php中)。sync代表同步。因此,所有作业都会立即执行。
发布于 2015-07-09 20:32:27
延迟消息队列
如果要延迟队列中电子邮件的传递,可以使用后一种方法。首先,只需将您希望延迟消息发送的秒数作为第一个参数传递给该方法:
Mail::later(5, 'emails.welcome', $data, function ($message) {
//here 5 is the number of seconds
});https://stackoverflow.com/questions/31315668
复制相似问题