В настоящее время используется ajax для наблюдения за долго выполняющейся задачей в приложении Django.Во время выполнения задачи отображается индикатор выполнения, и после ее завершения я бы хотел, чтобы ajax сделал запрос и загрузил представление с результатами, чтобы отобразить страницу для пользователя, отображающего эти результаты.Как я могу загрузить представление через ajax и jquery из внешнего интерфейса, передавая данные пользователю?
текущее (неработающее) решение: в моем шаблоне:
<script>
var progressUrl = "{% url 'celery_progress:task_status' task_id %}";
document.addEventListener("DOMContentLoaded", function () {
CeleryProgressBar.initProgressBar(progressUrl);
});
function customResult(resultElement, result) {
$.ajax({
type: 'POST',
url: '/show_results/',
data:{
results:$('result').val(),
'csrfmiddlewaretoken': "{{ csrf_token }}"
}
})
}
$(function () {
CeleryProgressBar.initProgressBar(progressUrl, {
onResult: customResult,
})
});
</script>
views.py:
def show_results(request, results):
template = 'fv1/fv.html'
form = FVForm(request.post)
if request.method == 'POST':
results = request.POST.get('results')
return render(request, templates, context = results)