浅谈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简单的函数定义和用法实例
May 07 Python
Django的数据模型访问多对多键值的方法
Jul 21 Python
Python实现将xml导入至excel
Nov 20 Python
Python生成数字图片代码分享
Oct 31 Python
Windows 64位下python3安装nltk模块
Sep 19 Python
django与vue的完美结合_实现前后端的分离开发之后在整合的方法
Aug 12 Python
python 3.6.7实现端口扫描器
Sep 04 Python
python循环嵌套的多种使用方法解析
Nov 29 Python
python第三方库学习笔记
Feb 07 Python
使用keras内置的模型进行图片预测实例
Jun 17 Python
Python bisect模块原理及常见实例
Jun 17 Python
Python函数__new__及__init__作用及区别解析
Aug 31 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提示Notice: Undefined variable的解决办法
2012/11/24 PHP
浅析PKI加密解密 OpenSSL
2013/07/01 PHP
分享常见的几种页面静态化的方法
2015/01/08 PHP
YII Framework框架教程之日志用法详解
2016/03/14 PHP
Laravel 集成微信用户登录和绑定的实现
2019/12/27 PHP
firefo xml 读写实现js代码
2009/06/11 Javascript
悄悄用脚本检查你访问过哪些网站的代码
2010/12/04 Javascript
asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)
2012/03/14 Javascript
选择复选框按钮置灰否则按钮可用
2014/05/22 Javascript
Bootstrap table右键功能实现方法
2017/02/20 Javascript
使用vue打包时vendor文件过大或者是app.js文件很大的问题
2018/06/29 Javascript
javascript中UMD规范的代码推演
2018/08/29 Javascript
jquery.pagination.js分页使用教程
2018/10/23 jQuery
使用express获取微信小程序二维码小记
2019/05/21 Javascript
bootstrap+spring boot实现面包屑导航功能(前端代码)
2019/10/09 Javascript
vuex实现购物车的增加减少移除
2020/06/28 Javascript
[01:04:14]OG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
在Python中编写数据库模块的教程
2015/04/29 Python
用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例
2017/12/14 Python
python实现最长公共子序列
2018/05/22 Python
Python二叉树的镜像转换实现方法示例
2019/03/06 Python
python爬虫 urllib模块url编码处理详解
2019/08/20 Python
Python post请求实现代码实例
2020/02/28 Python
python如何实现word批量转HTML
2020/09/30 Python
Python 图片处理库exifread详解
2021/02/25 Python
意大利单身交友网站:Meetic
2020/07/12 全球购物
EJB的激活机制
2013/10/25 面试题
写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔
2015/07/30 面试题
优秀团员事迹材料1500字
2014/08/31 职场文书
投标文件签署授权委托书范本
2014/10/12 职场文书
2014年施工员工作总结
2014/11/18 职场文书
2015年学校医务室工作总结
2015/07/20 职场文书
关于环保的广播稿
2015/12/17 职场文书
2016年优秀班主任先进事迹材料
2016/02/26 职场文书
2019年入党思想汇报格式与要求
2019/06/25 职场文书
使用CSS实现小三角边框原理解析
2021/11/07 HTML / CSS