mirror of
https://github.com/Balshgit/public.git
synced 2025-09-12 16:40:43 +03:00
29 lines
990 B
Python
29 lines
990 B
Python
from django.http import HttpRequest, HttpResponse
|
|
from django.shortcuts import render, redirect
|
|
from django.urls import reverse
|
|
from django.contrib.auth.decorators import login_required
|
|
from django.contrib.auth.models import User
|
|
from django.core.exceptions import ObjectDoesNotExist
|
|
from .tasks import process_download
|
|
from django.views.decorators.http import require_http_methods
|
|
from celery.result import AsyncResult
|
|
|
|
|
|
task_id = {}
|
|
|
|
|
|
def demo_view(request: HttpRequest) -> HttpResponse:
|
|
username = str(request.user.username)
|
|
if request.method == 'POST':
|
|
# Create Task
|
|
download_task = process_download.delay()
|
|
# Get ID
|
|
task_id[username] = download_task.task_id
|
|
# Print Task ID
|
|
print(f'Celery Task ID: {task_id[username]}')
|
|
# Return demo view with Task ID
|
|
return render(request, 'progress.html', {'task_id': task_id[username]})
|
|
else:
|
|
# Return demo view
|
|
return render(request, 'progress.html', {})
|