2017-10-17 46 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)