Python全系列 教程
3567个小节阅读:5931.9k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
Django任务交给Celery的方法和普通使用Celery任务的调用基本无区别,只是将执行代码的放到到View视图中
而获取结果,往往并不能把结果和第1次请求一起响应,若想获取结果是通过第2次请求获取结果
代码如下:
xxxxxxxxxx
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 HttpResponse(f"任务的结果是:{res}")
实时效果反馈
1. 关于Djang中使用Celery,说法错误的是?
A Django将任务交给Celery是可以通过View视图
B 用户请求后,Celery执行后,结果必须需要2次请求获取
C Django控制Celery执行任务,需要开启work
答案
1=>B