Python中文
首页
教程
问答
标签
搜索
登录
注册
错误:视图返回HttpResponse对象。它返回了一个未等待的协同程序。您可能需要在视图中添加“等待”
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在Django项目中工作,在该项目中,我向数据库中添加一个事件,然后在添加事件后向所有订阅者发送一封电子邮件。我想做异步发送电子邮件的任务,我遵循一些博客文章,并提出了这个</p> <pre><code>from asgiref.sync import sync_to_async import asyncio </code></pre> <p>这是添加事件视图</p> <pre><code>@login_required(login_url='/login/') async def add_event_view(request): if request.method == 'POST': title = request.POST.get('title') description = request.POST.get('editor') menu = request.POST.get('menu') tags = request.POST.get('tags') banner = request.FILES.get('banner') data = request.FILES.get('data', None) organised_by = request.POST.get('organised_by', None) sponsored_by = request.POST.get('sponsored_by', None) event_date = request.POST.get('event_date', None) uploaded_at = request.POST.get('uploaded_at') Event.objects.create(user_id=request.user, event_title=title, event_description=description, event_category=menu, event_tags=tags, event_banner=banner, event_data=data, organised_by=organised_by, sponsored_by=sponsored_by, event_date=event_date, uploaded_at=uploaded_at) await sync_to_async(send_email(title)) return redirect(etab_view) </code></pre> <p>这是电子邮件发送功能</p> <pre><code>async def send_email(title): event = Event.objects.get(event_title=title) content = render_to_string("email.html", {'et': event}) subs = Subscriber.objects.values_list('email_address', flat=True) email = EmailMultiAlternatives('Emagazine Update', content, settings.EMAIL_HOST_USER, list(subs)) email.attach_alternative(content, "text/html") email.fail_silenty = False email.send() </code></pre> <p>我得到以下错误:</p> <p>视图EMAG_APP.views.add_event_视图未返回HttpResponse对象。它返回了一个未等待的协同程序。您可能需要在视图中添加“等待”</p> <p>有人能帮我吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我认为问题出在{<cd1>}</p> <p>etab_视图到底是什么?尝试将其替换为该视图的URL.py中给定的名称</p> <p>见<a href="https://docs.djangoproject.com/en/3.1/topics/http/shortcuts/#django.shortcuts.redirect" rel="nofollow noreferrer">Documentation for redirect</a></p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
Django:。是不是“超级用户”字段不起作用
4 回答
Django:'DeleteQuery'对象没有属性'add'
7 回答
Django:'ModelForm'对象没有属性
6 回答
Django:'python manage.py runserver'返回'TypeError:'WindowsPath'类型的对象没有len()
1 回答
Django:'Python管理.pysyncdb'不创建我的架构表
6 回答
Django:'Python管理.py迁移“耗时数小时(和其他奇怪的行为)
1 回答
Django:'readonly'属性在我的ModelForm上不起作用
9 回答
Django:'RegisterEmployeeView'对象没有属性'object'
5 回答
Django:'str'对象没有属性'get'
4 回答
Django:'创建' 不能被指定为Order模型表单中的值,因为它是一个不可编辑的字段
10 回答
Django:“'QuerySet'类型的对象不是JSON可序列化的”
5 回答
Django:“'utf8'编解码器无法解码位置19983中的字节0xe9:无效的连续字节”,加载临时文件时
10 回答
Django:“<…>”需要有一个字段“id”的值,然后才能使用这个manytomy关系
4 回答
Django:“AnonymousUser”对象没有“get_full_name”属性
4 回答
Django:“ascii”编解码器无法解码位置1035中的字节0xc3:序号不在范围内(128)
5 回答
Django:“BaseTable”对象不支持索引
4 回答
Django:“collections.OrderedDict”对象不可调用
4 回答
Django:“Country”对象没有属性“all”
3 回答
Django:“Data”对象没有属性“save”
4 回答
Django:“datetime”类型的对象不是JSON serializab
9 回答