Ich habe rq
nicht verwendet vorher, aber ich sehe, dass ein Job einen .key
hat Eigentum. Es könnte einfacher sein, diesen Hash in Ihrer Sitzung zu speichern. Dann können Sie den Job
verwenden .fetch
der Klasse -Methode, die selbst ein .refresh()
aufruft und den Job an Sie zurückgeben. Lesen von .result()
An diesem Punkt erhalten Sie den aktuellen Status des Auftrags.
Vielleicht so (ungetestet):
from rq.job import Job
@app.route('/make/')
def make():
job = q.enqueue(do_something, 'argument')
session['job'] = job.key
return 'Done'
@app.route('/get/')
def get():
try:
job = Job()
job.fetch(session['job'])
out = str(job.result)
except:
out = 'No result yet'
return out