如何使用包类作为队列工作者



我已经构建了我的第一个Laravel 4包。

我使用artisan来创建结构。

我需要使用这个包来处理一个队列(作为worker)。

我正在使用内置的Beanstalk队列并对其进行配置,并且我能够添加到队列中。

向我想用来处理队列的类添加正确路径的正确语法是什么?

我可以得到这个工作,如果类保存在这里/app/controllers/TestClass.php(因为这得到自动加载)


的例子:
Route::get('/addtoqueue', function()
{
    $message = "This is a test message";
    Queue::push('TestClass', array('message' => $message));
    return 'Added to Queue';
});

但是,如果类在包中,我应该把什么作为类放在队列中呢?
这个文件在工作台中:工作台供应商包 src 供应商包

我的包编辑器文件包含

"autoload": {
    "psr-0": {
        "Qwickli\Tika": "src/"
    }
},

。Queue::push('vendorpackageTestClass', array('message' => $message));

当我运行php artisan queue:listen时,它正确地拾取队列中的项目,但它没有找到我想要使用处理队列的类(在包中)

由于某些原因,类没有被加载(或自动加载),我不知道如何使其发生。

感谢所有的帮助

看起来你的包类没有被自动加载。

尝试访问您的包文件夹workbench/vendor/package并运行compsoer update。如果你的作曲器"自动加载"设置正确,这应该可以工作。

相关内容

  • 没有找到相关文章

最新更新