首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查Django中的请求类型

检查Django中的请求类型
EN

Stack Overflow用户
提问于 2010-05-30 12:22:15
回答 1查看 9.3K关注 0票数 14

虽然建议使用以下构造来检查请求是否为POST。

代码语言:javascript
复制
if request.method == 'POST':
    pass

人们很可能会发现

代码语言:javascript
复制
if request.POST:
    pass

更优雅、更简洁。

除了个人偏好之外,还有什么理由不使用它吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-05-30 12:24:08

文档中对此有明确的说明:

  • http://docs.djangoproject.com/en/dev/ref/request-response/#django.http.HttpRequest.POST

可以使用空的POST字典通过POST进入请求--例如,如果通过POST HTTP方法请求表单,但不包括表单数据。因此,您不应该使用if request.POST来检查POST方法的使用;相反,应该使用if request.method == "POST“(参见上文)。

代码语言:javascript
复制
>>> # assume an empty POST request would be treated as a dict
>>> bool({})
False
>>> # it would be a POST request, but request.POST would evaluate to False
票数 21
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2937518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档