Мне нужно запустить длительный процесс в ответ на отправку формы в django. Затем я хотел бы иметь возможность опроса с использованием ajax и чтобы представление отображало состояние процесса (запущен, остановлен или запущен). Кроме того, я хочу иметь возможность остановить процесс.
так что мой взгляд выглядит так:
def start()
. . .
def stop()
. . .
def status()
. . .
Этот конкретный вопрос неоднократно рассматривался на SO, но моя ситуация немного отличается: Я ищу решение, которое является полностью питоническим, не требует ничего, чего нет в наличии в django и не требует использование базы данных.
Самое близкое, что я нашел, это этот пост . Я реализовал код и несколько упростил его, но оказалось, что request.session не является глобальным (два браузера имеют разные сессии).
Возможно, моя проблема может быть решена с помощью чего-то другого, кроме request.session, для сохранения состояния start / stop / status, но я понятия не имею, что это будет.
Еще одна возможность, с которой я столкнулся при чтении, - это промежуточное ПО django, но согласно это ,
__ init __ () вызывается только один раз - при запуске сервера - не для отдельных
запросы
Здесь также есть запись в блоге здесь , в которой говорится о глобальном состоянии в django.
Есть мысли?