在Laravel 5.5中,我创建了一个这样的队列作业:
class EmailJob implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
private $emailModel;
/**
* Create a new job instance.
*
* @return void
*/
public function __construct(MyEmail $emailModel)
{
//
$this->emailModel = $emailModel;
}
// ...
}
MyEmail
是存储电子邮件数据的模型。database
驱动程序。现在,我想捕获失败的作业(在failed_jobs
表中),并将它们链接到相关的MyEmail
对象(例如:存储在属性failed_job_id
中),然后再打开我的应用可以手动重试特定电子邮件的失败作业。我怎样才能做到这一点?
我有一种解决方法,在其中通过failed_jobs
表获取所有失败的作业,并逐个检查有效负载,确定MyEmail
对象是否具有我们想要的id
。但我认为它没有效率。