[英]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.