gpt4 book ai didi

laravel - 我怎么能在 Laravel 中从另一份工作中分派(dispatch)一份工作

转载 作者:行者123 更新时间:2023-12-04 12:44:14 24 4
gpt4 key购买 nike

Trait method dispatch has not been applied, because there are collisions with other trait methods on 

我总是收到上述错误,现在我想在工作中同时使用 Dispatchable 和 DispatchJobs,我该怎么做?任何帮助或指导将不胜感激。在 Laracasts 上寻找了几个解决方案,但没有一个奏效。

最佳答案

作业通常不会分派(dispatch)其他作业,因此首先删除 DispatchJobs特征。你能做的就是听job events .

当作业完成时,它会触发 after事件。监听此事件,然后 dispatch()监听器中的下一个作业:

/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
Queue::after(function (JobProcessed $event) {
// determine the job type from $event->job
// then dispatch the next job based on your logic

// check the job type
if ($event->job instanceof MyJob) {
// get the job payload to pass to next job
$data = $event->job->payload

dispatch(new NextJob($data));
// or use the static method
NextJob::dispatch($data);
}
});
}

关于laravel - 我怎么能在 Laravel 中从另一份工作中分派(dispatch)一份工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48838555/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com