【问题标题】:Laravel4 + Iron io: How to send mail using Mail::queue?Laravel4 + Iron io:如何使用 Mail::queue 发送邮件?
【发布时间】:2013-12-04 08:58:20
【问题描述】:

我有一个带有表单的 laravel 应用程序,当它提交时会发送一封邮件。 收到邮件后,邮件配置工作正常。

但是由于这个过程很慢,我决定使用队列。

我已经设置了 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 的代码是正确的,错误的可能在路线中。

所以真正的问题可能是:我必须如何设置路线才能使队列正常工作? Queue::marshal 哪个位置合适?

谢谢你们! 很抱歉,如果它感到困惑。 希望你能帮我澄清一下!

【问题讨论】:

    标签: php email laravel laravel-4 iron


    【解决方案1】:

    我以前用过 SQS 但没用过 Iron,也许你应该用这个?

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

    【讨论】:

      猜你喜欢
      • 2014-10-03
      • 2020-11-26
      • 2018-02-26
      • 2015-09-12
      • 2017-08-28
      • 2013-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多