浅谈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实现JAVA源代码从ANSI到UTF-8的批量转换方法
Aug 10 Python
利用Python生成文件md5校验值函数的方法
Jan 10 Python
Python爬虫之正则表达式的使用教程详解
Oct 25 Python
python for 循环获取index索引的方法
Feb 01 Python
python解压TAR文件至指定文件夹的实例
Jun 10 Python
pyqt5 实现 下拉菜单 + 打开文件的示例代码
Jun 20 Python
使用浏览器访问python写的服务器程序
Oct 10 Python
Python实现企业微信机器人每天定时发消息实例
Feb 25 Python
基于python实现计算且附带进度条代码实例
Mar 31 Python
python如何实现word批量转HTML
Sep 30 Python
使用python创建股票的时间序列可视化分析
Mar 03 Python
基于Python实现对比Exce的工具
Apr 07 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
咖啡与牛奶
2021/03/03 冲泡冲煮
用Zend Encode编写开发PHP程序
2010/02/21 PHP
php使用PDO方法详解
2014/12/27 PHP
Laravel执行migrate命令提示:No such file or directory的解决方法
2016/03/16 PHP
PHP命名空间和自动加载类
2016/04/03 PHP
Laravel等框架模型关联的可用性浅析
2019/12/15 PHP
使用JavaScript修改浏览器URL地址栏的实现代码
2013/10/21 Javascript
js动画效果制件让图片组成动画代码分享
2014/01/14 Javascript
详解JavaScript中undefined与null的区别
2014/03/29 Javascript
jQuery中:first选择器用法实例
2014/12/30 Javascript
javascript实现textarea中tab键的缩排处理方法
2015/06/26 Javascript
JS实现浏览器状态栏文字闪烁效果的方法
2015/10/27 Javascript
Bootstrap学习系列之使用 Bootstrap Typeahead 组件实现百度下拉效果
2016/07/07 Javascript
JS判断是否在微信浏览器打开的简单实例(推荐)
2016/08/24 Javascript
jquery.validate表单验证插件使用详解
2017/06/21 jQuery
详解Vue学习笔记进阶篇之列表过渡及其他
2017/07/17 Javascript
浅谈vuex 闲置状态重置方案
2018/01/04 Javascript
通过循环优化 JavaScript 程序
2019/06/24 Javascript
从零搭一个自用的前端脚手架的方法步骤
2019/09/23 Javascript
node.JS事件机制与events事件模块的使用方法详解
2020/02/06 Javascript
微信小程序中使用 async/await的方法实例分析
2020/05/06 Javascript
urllib2自定义opener详解
2014/02/07 Python
简单总结Python中序列与字典的相同和不同之处
2016/01/19 Python
分享一个简单的python读写文件脚本
2017/11/25 Python
Python random模块用法解析及简单示例
2017/12/18 Python
Python使用matplotlib填充图形指定区域代码示例
2018/01/16 Python
TensorFlow高效读取数据的方法示例
2018/02/06 Python
Python解决线性代数问题之矩阵的初等变换方法
2018/12/12 Python
Python中查看变量的类型内存地址所占字节的大小
2019/06/26 Python
从pandas一个单元格的字符串中提取字符串方式
2019/12/17 Python
Opencv求取连通区域重心实例
2020/06/04 Python
python中pandas库中DataFrame对行和列的操作使用方法示例
2020/06/14 Python
css3 media 响应式布局的简单实例
2016/08/03 HTML / CSS
工作自我评价分享
2013/12/01 职场文书
大学校园活动策划书
2014/02/04 职场文书
小学英语教学反思范文
2016/02/15 职场文书