2017-10-17 66 views
3

直到Laravel 5.4,dispatch()方法返回队列作业ID。在Laravel 5.5中,如何在将作业分派到作业队列后获取作业ID?

$job = (new JobClass())->onQueue('queuename'); 
$jobId = dispatch($job); 

dd($jobId); // prints the job id 

在5.5,它返回一个PendingDispatch对象,这似乎并不需要检索作业ID的方法。

我已经试过dispatch_now(),但它立即同步执行作业,而我希望它在后台执行。

+0

'$求职> id'或'工作[ '身份证']'? – Onix

+0

这些都不起作用。 – past12

回答

3

在Laravel github上打开一个问题之后,解决的办法是使用:

app(\Illuminate\Contracts\Bus\Dispatcher::class)->dispatch($job) 

,而不是

dispatch($job)