Installation - pip install django-celery
Add
Basic project structure.
- src/
- bin/celery_worker_start # will be explained later on
- logs/celery_worker.log
- stack/__init __.py
- stack/celery.py
- stack/settings.py
- stack/urls.py
- manage.py
Add celery.py
file to your stack/stack/
folder.
from __future__ import absolute_import
import os
from celery import Celery
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'stack.settings')
from django.conf import settings # noqa
app = Celery('stack')
app.config_from_object('django.conf:settings')
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
to your stack/stack/__init__.py
add following code:
from __future__ import absolute_import
from .celery import app as celery_app # noqa
Create a task and mark it for example as @shared_task()
@shared_task()
def add(x, y):
print("x*y={}".format(x*y))
Running celery worker "by hand":
celery -A stack worker -l info
if you also want to add