Skip to content

Instantly share code, notes, and snippets.

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'demo_app',
'celery',
'celery_progress',
from django.contrib import admin
from django.urls import include, path, re_path
urlpatterns = [
re_path(r'^', include('demo_app.urls')),
re_path(r'^celery-progress/', include('celery_progress.urls')),
]
<!DOCTYPE html>
<html lang="en">
<head>
<title>Celery-Progress Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>
from celery import shared_task
from celery_progress.backend import ProgressRecorder
import datetime
from nasapy import Nasa
import random
import time
nasa = Nasa(key="Generate your API Key at https://api.nasa.gov/")
@shared_task(bind=True)
from __future__ import absolute_import, unicode_literals
# This will make sure the app is always imported when
# Django starts so that shared_task will use this app.
from .celery import app as celery_app
__all__ = ('celery_app',)
from __future__ import absolute_import, unicode_literals
from celery import Celery
from decouple import config
import django
import os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'demo_project.settings')
app = Celery('demo_project', backend='redis://localhost', broker='pyamqp://')