簡體   English   中英

Laravel4 + Iron io:如何使用Mail :: queue發送郵件?

[英]Laravel4 + Iron io: How to send mail using Mail::queue?

我有一個laravel應用,表單提交后會發送郵件。 由於已收到郵件,因此郵件配置正常工作。

但是由於過程非常緩慢,所以我決定使用Queue。

我已經設置了Iron mq帳戶,並在Laravel4上進行了設置。

因此,我切換到Mail::queue而不是Mail::send 這是代碼:

      return \Mail::queue($this->view, $this->data, function($message) use($self)
    {
        $message->to($self->email, $self->to)->subject($self->subject);
    });

在路線中簡單地是:

  Route::post('booking', 'HomeController@booking');
  Route::post('rezervesana', 'HomeController@booking'); // This is for the latvian version

當我提交表單時,該隊列在Iron mq儀表板中收到,並且顯然被解雇了。 但是沒有收到郵件。

如果相反我做這樣的事情:

  Route::post('booking', function()
  {
        return Queue::marshal();    
  });

然后神奇地它將在拉脫維亞語版本(rezervesana)中工作,但是當然,英語版本頁面甚至無法打開。

所以我很困惑。

問題是:如何使用Mail::queue正確發送Mail::queue以及如何在路由中進行處理?

我認為有關Mail::queue的代碼是正確的,在路由中可能出了問題。

因此,真正的問題可能是:我如何設置路由才能使隊列正常工作? Queue::marshal的正確位置在哪里?

感謝大伙們! 對不起,如果感到困惑。 希望你能向我澄清!

我以前使用過SQS,但沒有使用Iron,也許您應該使用它?

Route::post('booking', array('before'=>'csrf', 'uses'=>'HomeController@booking'));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM