浅谈Django中的QueryDict元素为数组的坑


Posted in Python onMarch 31, 2020

一般在Django的视图函数中使用request.POST来获取请求体,request.POST是QueryDict类,通常作为dict来使用。

正常如下图

浅谈Django中的QueryDict元素为数组的坑

但是昨天在使用的时候遇到一个错误,提示从QueryDict里面pop出来的值类型为list。

一脸懵逼

在命令行敲代码,发现了这个坑, 如下图

浅谈Django中的QueryDict元素为数组的坑

可以看到,pop出来的值被放在的一个list里面。关键这个不同版本之间,行为还有所不同,就是因为在开发机器上一切正常,到了测试服务器就出问题才被发现的。

知道了问题,解决起来也简单,直接调用QueryDict的dict方法,返回一个字典

浅谈Django中的QueryDict元素为数组的坑

补充知识:django基础知识之QueryDict对象

QueryDict对象

定义在django.http.QueryDict

request对象的属性GET、POST都是QueryDict类型的对象

与python字典不同,QueryDict类型的对象用来处理同一个键带有多个值的情况

方法get():根据键获取值

只能获取键的一个值

如果一个键同时拥有多个值,获取最后一个值

dict.get('键',default)

或简写为

dict['键']

方法getlist():根据键获取值

将键的值以列表返回,可以获取一个键的多个值

dict.getlist('键',default)

以上这篇浅谈Django中的QueryDict元素为数组的坑就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用循环实现批量创建文件夹示例
Mar 25 Python
python单元测试unittest实例详解
May 11 Python
python实现用户管理系统
Jan 10 Python
pandas 取出表中一列数据所有的值并转换为array类型的方法
Apr 11 Python
Python设计模式之职责链模式原理与用法实例分析
Jan 11 Python
Python代码实现删除一个list里面重复元素的方法
Apr 02 Python
Django单元测试中Fixtures用法详解
Feb 25 Python
django实现HttpResponse返回json数据为中文
Mar 27 Python
详解查看Python解释器路径的两种方式
Oct 15 Python
如何用python爬取微博热搜数据并保存
Feb 20 Python
pytorch 中nn.Dropout的使用说明
May 20 Python
python异常中else的实例用法
Jun 15 Python
Python + selenium + crontab实现每日定时自动打卡功能
Mar 31 #Python
python实现udp聊天窗口
Mar 31 #Python
浅谈在django中使用filter()(即对QuerySet操作)时踩的坑
Mar 31 #Python
Python sorted排序方法如何实现
Mar 31 #Python
解决Django中checkbox复选框的传值问题
Mar 31 #Python
Python文本文件的合并操作方法代码实例
Mar 31 #Python
Python调用接口合并Excel表代码实例
Mar 31 #Python
You might like
PHP 伪静态技术原理以及突破原理实现介绍
2013/07/12 PHP
session在php5.3中的变化 session_is_registered() is deprecated in
2013/11/12 PHP
PHP的serialize序列化数据以及JSON格式化数据分析
2015/10/10 PHP
php实现三级级联下拉框
2016/04/17 PHP
Javascript 获取链接(url)参数的方法
2009/02/15 Javascript
jquery $(document).ready() 与window.onload的区别
2009/12/28 Javascript
基于jquery的button默认enter事件(回车事件)。
2011/05/18 Javascript
javascript 原型继承介绍
2011/08/30 Javascript
25个非常棒的jQuery滑块插件和教程小结
2011/09/02 Javascript
关于js里的this关键字的理解
2015/08/17 Javascript
Mvc提交表单的四种方法全程详解
2016/08/10 Javascript
Nodejs异步流程框架async的方法
2019/06/07 NodeJs
vue前后分离调起微信支付
2019/07/29 Javascript
python实现在pickling的时候压缩的方法
2014/09/25 Python
Python中用sleep()方法操作时间的教程
2015/05/22 Python
在Python的Django框架中包装视图函数
2015/07/20 Python
Python自定义函数实现求两个数最大公约数、最小公倍数示例
2018/05/21 Python
Django 视图层(view)的使用
2018/11/09 Python
Python3实现获取图片文字里中文的方法分析
2018/12/13 Python
Python通过TensorFlow卷积神经网络实现猫狗识别
2019/03/14 Python
Python中format()格式输出全解
2019/04/12 Python
PyQt5实现QLineEdit添加clicked信号的方法
2019/06/25 Python
Python调用百度根据经纬度查询地址的示例代码
2019/07/07 Python
利用python实现冒泡排序算法实例代码
2019/12/01 Python
如何定义TensorFlow输入节点
2020/01/23 Python
利用PyTorch实现VGG16教程
2020/06/24 Python
美国眼镜网:GlassesUSA
2017/09/07 全球购物
澳大利亚领先的亚麻品牌:Bed Threads
2019/12/16 全球购物
如何填写个人简历自我评价
2013/12/10 职场文书
工作中个人的自我评价
2013/12/31 职场文书
小区门卫管理制度
2014/01/29 职场文书
网上卖盒饭创业计划书范文
2014/02/07 职场文书
微笑服务标语
2014/06/24 职场文书
学生安全责任书模板
2014/07/25 职场文书
个人业务学习心得体会
2016/01/25 职场文书
mybatis调用sqlserver存储过程返回结果集的方法
2021/05/08 SQL Server