1.在setting中:
import djcelery
#当djcelery.setup_loader()运行时,
#Celery便会去查看INSTALLD_APPS下包含的所有app目录中的tasks.py文件,
#找到标记为task的方法,将它们注册为celery
task。
djcelery.setup_loader()
BROKER_URL='amqp://guest:guest@localhost:5672//'
CELERY_RESULT_BACKEND='redis://localhost:6379/1'
- 当djcelery.setup_loader()运行时,Celery便会去查看INSTALLD_APPS下包含的所有app目录中的tasks.py文件,找到标记为task的方法,将它们注册为celery task。
2.在setting中的install_app中添加djcelery
3.在新建的app下新建一个tasks.py的文件
- tasks.py必须建在各app的根目录下
- 不能随意命名。
- ```
import time
from celery import task
@task
def add(x,y):
  time.sleep(4)
  print(x+y)
  return x+y
4.在view中调用tasks.py中的任务
from django.http import JsonResponse
from .tasks import add
def do_request(request):
  add.delay(3,9)
  return JsonResponse({'msg':'success'})
- 配置url- 
- from django.conf.urls import url- from . import views- app_name = 'course'- urlpatterns = [- url('do/',views.do_request,name='do')- ]
 
- 主url中引入app中的url- 
- url('course/',include('course.urls',namespace='course'))
 
启动项目和worker
查看帮助:python manage.py celery --help
- 启动项目:- 
- python manage.py runserver 0.0.0.0:8000
 -  
- 启动worker- 
- python manage.py celery worker -l INFO