- 在django根目录下创建celery_task包(包名可自定议)
# 目录结构如下
luffy_api
celery_task #celery的包路径
celery.py # 名字必须是celery.py
task.py # 任务文件,可根据业务自己命名,里面主要写一些业务方面的内容
luffy_api #源代码路径
# 注意!注意!注意!
在celery.py中,必须加入下面的配置,还则django调用时会报错!
import os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffy_api.settings.dev')
-
在使用提交异步任务的位置,导入使用即可
-视图函数中使用,导入任务
-任务.delay() # 提交任务 -
启动worker,如果有定时任务,启动beat
-
等待任务被worker执行
-
在视图函数中,查询任务执行的结果
重点:celery中使用djagno,有时候,任务中会使用django的orm,缓存,表模型等,一定要加上下面的配置
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffy_api.settings.dev')