2016-08-12 89 views
0

我有一個應用程序在提交表單後向郵件列表發送郵件。爲此,我使用隊列作業在後臺將郵件發送到該列表。我爲此使用SMTP與郵件捕獲。我不熟悉這個隊列作業功能。如何使用SMTP將郵件發送至包含隊列作業的電子郵件列表

這是我的控制器代碼調度隊列:

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。

回答

0

您應該撥打Mail::queueMail::later而不是Mail::send

refer to Mail documentation萬一你失去了別的東西。

+0

嗨皮特休斯頓,我也嘗試過Mail :: queue,但沒有成功 –