Laravel 4中的排队事件:未找到Event :: flusher()方法

时间:2013-05-29 16:11:24

标签: laravel laravel-4

根据Laravel 4 Documentation on queued Events,我尝试以这种方式注册一个事件:

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');
    });    
});

但是我在加载脚本时遇到以下错误:

  

调用未定义的方法Illuminate \ Events \ Dispatcher :: flusher()

我也在L4的源代码中找不到这个方法。但是当我将其从Event::flusher()更改为Event::listen()时,一切都按预期工作。

所以我的猜测是,文档不是最新的,并且Event::flusher()方法已被删除,因为Event::listen()执行相同的工作。或者这两种方法之间有什么不同,我的代码中有错误吗?

1 个答案:

答案 0 :(得分:0)

您可能需要使用以下命令更新库:

$ composer update

如果这不起作用,请告诉我们您的composer.json文件的样子 - 如果是框架,您可能会使用测试版。它在第一次稳定发布之前经常更新。