celery在django中使用配置

发布时间 2023-07-07 16:08:34作者: 树苗叶子
  1. 在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')
  1. 在使用提交异步任务的位置,导入使用即可
    -视图函数中使用,导入任务
    -任务.delay() # 提交任务

  2. 启动worker,如果有定时任务,启动beat

  3. 等待任务被worker执行

  4. 在视图函数中,查询任务执行的结果

重点:celery中使用djagno,有时候,任务中会使用django的orm,缓存,表模型等,一定要加上下面的配置

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffy_api.settings.dev')