Long-running async tasks: Expose running state

This commit is contained in:
Raphael Michel
2020-07-23 21:39:13 +02:00
parent b5dca762f0
commit d58c8559fc
2 changed files with 29 additions and 11 deletions

View File

@@ -77,7 +77,8 @@ class AsyncAction:
data = self._ajax_response_data()
data.update({
'async_id': res.id,
'ready': ready
'ready': ready,
'started': False,
})
if ready:
if res.successful() and not isinstance(res.info, Exception):
@@ -102,8 +103,13 @@ class AsyncAction:
})
elif res.state == 'PROGRESS':
data.update({
'started': True,
'percentage': res.result.get('value', 0)
})
elif res.state == 'STARTED':
data.update({
'started': True,
})
return data
def get_result(self, request):