繁体   English   中英

Queue :: Push错误-Laravel

[英]Queue::push error - laravel

我在laravel项目的web.php中有以下代码:

 Route::get('/', function () {
    Queue::push(function(){
        Log::info('12');
        return 'done';
    });
});

但是当我向http://localhost:8000/发送请求时, 出现错误

Closure object cannot have properties

我尝试这样,但我有同样的错误:

 Route::get('/', function () {
    Queue::push(function($job){
        Log::info('12');
        return 'done';
        $job->delete();
    });
});

Laravel版本是: 5.6

我认为您的代码中总是有错字,请确保这不是问题所在:

Route::get('/', function () {
Queue::push(function($job){
    Log::info('12');
    return 'done';
    $job->delete();
});
 });

$hob替换$hob $job

可能您不允许在Queue::push内部传递闭包。

您需要像这样传递Job类:

Queue::push(MyNewJob::class, $data);

MyNewJob应该是这样的:

class MyNewJob implements ShouldQueue
{
    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;

    public function handle()
    {
       Log::info('12');
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM