Django之Celery篇(三)

一、任务交给Celery

image-20221116171534657

Django任务交给Celery的方法和普通使用Celery任务的调用基本无区别,只是将执行代码的放到到View视图中

而获取结果,往往并不能把结果和第1次请求一起响应,若想获取结果是通过第2次请求获取结果

代码如下:

from django.http import HttpResponse


from celery.result import AsyncResult


from .tasks import send_email,send_sms
# Create your views here.
def index(request):
  # 调用任务函数
  work_id1 = send_email.delay('baizhan')
  work_id2 = send_sms.delay('sxt')


  
  return HttpResponse(f"已经执行了定时,任务ID:{work_id1}=={work_id2}")


def result(request):
  work_id = request.GET.get('work_id')
  # 创建获取结果的对象
  result = AsyncResult(work_id)
  # 获取任务的结果
  res = result.get()
  return HttpResp

相关推荐

最近更新

  1. MySQL中的JOIN、LEFT JOIN、RIGHT JOIN讲解

    2024-03-25 09:32:02       0 阅读
  2. 学懂C#编程:C# 索引器(Indexer)的概念及用法

    2024-03-25 09:32:02       0 阅读
  3. c语言数据结构--链队列

    2024-03-25 09:32:02       0 阅读
  4. Ubuntu 22.04 设置swap交换空间

    2024-03-25 09:32:02       0 阅读

热门阅读

  1. xgb和gbm做回归代码sklearn

    2024-03-25 09:32:02       20 阅读
  2. 【生产力】Postman Desktop

    2024-03-25 09:32:02       14 阅读
  3. go-zero处理本地事务

    2024-03-25 09:32:02       18 阅读
  4. Spark与hive 不兼容语法

    2024-03-25 09:32:02       24 阅读
  5. 如何在MySQL中实现基于时间点的恢复?

    2024-03-25 09:32:02       18 阅读
  6. 01背包问题dp

    2024-03-25 09:32:02       24 阅读
  7. 请说明Vue父组件向子组件传值的方法

    2024-03-25 09:32:02       23 阅读
  8. import * as的使用

    2024-03-25 09:32:02       18 阅读
  9. Python BaseModel和dataclass用法和区别

    2024-03-25 09:32:02       19 阅读
  10. 开源GPGPU

    2024-03-25 09:32:02       18 阅读
  11. 前端并发控制

    2024-03-25 09:32:02       17 阅读