Django Celery с DropZone.JS
Я пытаюсь сделать прогресс-бар, используя celery и dropzone с Django, но я застрял здесь, я не могу добавить id задачи в шаблоны. Я отправляю сообщения из praw пользователям из csv файла из dropzone, поэтому я хочу сделать прогресс-бар и отобразить его на шаблоне
Вот мой шаблонный вид
<div class='progress-wrapper'>
<div id='progress-bar' class='progress-bar' style="background-color: #68a9ef; width: 0%;"> </div>
</div>
<div id="progress-bar-message">Waiting for progress to start...</div>
<script src="{% static 'celery_progress/celery_progress.js' %}"></script>
<script>
document.addEventListener("DOMContentLoaded", function() {
Dropzone.autoDiscover = false
const myDropzone = new Dropzone('#message_dropzone',{
...
this.on('sending',function(file,xhr,formData){
formData.append('csrfmiddlewaretoken',csrf);
...
var progressUrl = "{% url 'celery_progress:task_status' task_id %}";
CeleryProgressBar.initProgressBar(progressUrl);
})
и вот мои взгляды
def sending_message(request):
if request.method == 'POST':
file = request.FILES['file']
df = pd.read_csv(file)
data = df["username"]
...
if len(data) > 0:
try:
for user in data:
task = send_pm.delay(user, subject, message, subreddit, username, password,account.client_id,account.client_secret,account.proxy,counter)
account.messages = len(data)
account.save()
context = {"task_id": task.id}
return render(request, 'dashboard/dashboard_message.html',context)
return JsonResponse({"ex":True, "msg": "No Users in the csv"})
return redirect('Send Message')