我通过自定义工匠命令处理批处理作业
我有一个检查作业队列然后尝试更新作业列表的函数
$batch_check = DB::table('jobs_has_batch_job_queue')
->where('jobs_job_id',$this->job_id[0]->job_id)
->get();
if(count($batch_check) < 1)
{
var_dump($this->job_id[0]->job_id);die;
$this->info('Job Complete');
DB::table('jobs')
->where('jobs_job_id',$this->job_id[0]->job_id)
->update(['status' => 'complete']);
}
$batch_check
返回一个空数组
我看到了
$this->info('Job Complete');
回到终端和
$this->job_id[0]->job_id
返回一个整数,我通过在批处理开始时运行以下来获得此值
$this->job_id = DB::table('jobs')
->where('status','incomplete')
->limit(1)
->get();
所有文档都说将数组传递给 - &gt;更新
如果有人能够发现我出错的地方,那就太好了。
答案 0 :(得分:0)
James Kirkby
首先检查
$这 - &GT; JOB_ID [0] - &GT; JOB_ID
如果它给你一个值,那么给你任何值,然后检查jobid是否存在于数据库中
$exist = DB::table('jobs')
->where('jobs_job_id',$this->job_id[0]->job_id)->first();
dd(exist);