Я использую resque-status для Resque / Redis ...
https://github.com/quirkey/resque-status
Я в основном хочу создать новый метод Синатры ... что-то вроде ниже.У меня есть только 2 JobsWithStatus, поэтому он может либо вернуть оба, либо конкретный, мне все равно.
post '/getstatus' do
# return status here of all kinds (or specific)
end
Затем я хочу вывести% complete через jquery на внешний интерфейс, используя таймер опроса, который проверяетстатус каждые 5 секунд.
Это то, что у меня есть
post '/refresh' do
job_id = PostSaver.create(:length => Forum.count)
status = Resque::Status.get(job_id)
redirect '/'
end
В документации сказано, что я могу просто использовать status.pct_complete, но всегда возвращает 0?Даже тогда я новичок в ruby, и даже если переменная показала правильный% выполнения, я не уверена, как заставить эту переменную работать внутри отдельной записи sinatra (в / getstatus, а не / refresh).
Я пробовал это, однако, и он продолжает возвращать 0
post '/refresh' do
job_id = PostSaver.create(:length => Forum.count)
status = Resque::Status.get(job_id)
sleep 20
status.pct_complete.to_s
end