做项目的时候纠结了一下,找到django.http.request里面看了一下,发现199行写着:
def _load_post_and_files(self):
"""Populate self._post and self._files if the content-type is a form type"""
if self.method != 'POST':
self._post, self._files = QueryDict('', encoding=self._encoding), MultiValueDict()
return
这意味着只有POST才有request.POST这个表单信息。否则都是空的。。我只能自己hack了一下。。
为什么Django不打算处理PUT的表单信息呢?
我试了一下http://httpbin.org/put的接口,好像它就会处理。。。
难道PUT的表单不符合标准么?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
Django是基于页面表单处理的框架Web页面表单的form只支持GET和POST:参考只有
POST方法可以传递文件,所以Django进行了那样的处理PUT方法一般用于RESTful风格的接口中,Django目前没有太好的支持最近刚好做了一个Django+React的Todo程序,也遇到了同样的问题,我的代码如下,供你参考: