레일스가 업데이트 된 버전의 레코드를 반환하지 않습니다.레일스 쿼리가 업데이트 된 레코드를 반환하지 않습니다.
나는 백엔드에서 처리 될 db에 작업을 제출하는 경우 submit_job(sig, label, jobtype)
두 가지 방법을 사용합니다. 그런 다음 poll_result(id)
은 제출 된 작업을 매초 폴링하여 완료 시점을 확인한 다음 결과를 반환합니다 완료된 작업에서 사용자로
내 문제는 poll_result(id)
메서드가 업데이트 된 레코드를받지 못한다는 것입니다. 나는 그것이 액세스하는 레코드의 결과를 인쇄 할 때 내가 볼 수있는 모든이가하는
def self.poll_result(id)
change = false
Workbench.where("id = ?", id).each do |sig|
if sig.resultsready.to_i == 1
change = true
end
end
return change
end
는 반복 내 원래 삽입의 결과로 컴백한다. 데이터베이스를 직접보고 있는데 올바른 ID를 호출하고 레코드가 업데이트되었음을 알 수 있습니다. resultsready는 데이터베이스에서 1로 설정되고 루프는 끝나야하며 되돌아 가야하지만 무한 루프에 걸릴뿐입니다.
내 가정은 어떻게 든 캐시되는 오래된/부실 레코드를 얻는다는 것입니다.하지만 내 인생에서 새로운 레코드를 가져 오는 방법을 알아낼 수는 없습니다.
는
-Dennis