我要更改status
记录的Job
,在其任何子级(status
)的Jobdetails
之后是设置为true。
基本上,代码应类似于:
if every Job.jobdetail.status == true
Job.status = true
end
问题是,我不知道如何检查任何东西。当然,我知道rails中的where
语句,但是我不确定如何在没有每次迭代的情况下表达“ any”,我猜这种情况下不起作用。每次更新Jobdetails
之后,我都想检查其他Jobdetails
是否也“完成”。想象一下功能像进度条。如果每个子作业都已完成,则将主作业的状态更改为“完成”。我该如何实现?
感谢。
答案 0 :(得分:1)
如果仅在所有my_job
完成后才希望jobdetails
被标记为完成,那么您只需要检查至少一个jobdetail
是否具有{ {1}}:
status = false