如何使用SMTP将邮件发送到包含队列作业的电子邮件列表

时间:2016-08-12 12:16:29

标签: laravel queue jobs

我有一个应用程序在提交表单后将邮件发送到电子邮件列表。为此,我正在使用队列作业在后台将邮件发送到该列表。我正在使用SMTP与mailtrap。我是这个队列作业功能的新手。

这是调度队列的控制器代码:

public function sendMail(Request $request)
    {

    $lists = List::where('list_id',$request->list_id)->pluck('email')->toArray();
            $jobs = (new SendEmailToList($lists));
            $this->dispatch($jobs);
            return 'success';
    } 

这是我在队列中的工作功能:

public function handle()
    {
        $lists = $this->lists;

            Mail::send('email.test', array('email' => 'Sample'), function ($message) use ($lists) {
                $message->to($lists);
            });

    }

我的Linux系统主管中有一个程序文件queue:listen

我已经做了所有事情,但仍然没有发送邮件到所有电子邮件列表。我已经提到了许多文档,但仍然存在相同的问题,所有文档都是为了实现QueueManager而提供的。

1 个答案:

答案 0 :(得分:0)

您应该拨打Mail::queueMail::later而不是Mail::send

如果您遗失了其他内容,请refer to Mail documentation