根据Laravel 4关于排队事件的文档,我尝试以这种方式注册一个事件刷新器:
Event::flusher('foo.bar', function($data)
{
Mail::send(array('emails.notification', 'emails.notification_text'), array('content' => $data), function($message)
{
$message
->to('email@example.com', 'My Name')
->bcc('test@example.com')
->subject('Message from Listener');
});
});
但是我在加载脚本时得到以下错误:
调用未定义方法IlluminateEventsDispatcher::flusher()
我在L4的源代码中也找不到这个方法。但是当我把它从Event::flusher()
改为Event::listen()
时,一切都像预期的那样工作。
所以我的猜测是,文档不是最新的,Event::flusher()
方法已经被删除,因为Event::listen()
做同样的工作。或者这两个方法之间有什么不同,我的代码中有错误?
您可能需要使用以下命令更新库:
$ composer update
如果这不起作用,让我们知道你的composer.json
文件是什么样子的-如果框架,你可能正在使用测试版。在第一个稳定版本发布之前,它经常更新。