django执行数据库查询之后实现返回的结果集转json


Posted in Python onMarch 31, 2020

django执行sql语句后得到的返回结果是一个结果集,直接把结果转json返回给前端会报错,需要先遍历转字典在转json,特别注意model_to_dict()只会将结果集的第一条数据转字典,如果你是根据指定条件查一条数据返回的,直接用model_to_dict()没问题,如果执行的是all()或filter()到多条或全部的数据,这个时候去model_to_dict()这个集合就不行了,那么先遍历这个集合在转字典,然后转json就ok了

dic = {}
res = models.tables.objects.all().order_by('-id')
L = []
b = model_to_dict(res)
L.append(b)
dic['code'] = '1'
dic['message'] = ''
dic['result'] = L
return HttpResponse(json.dumps(dic, ensure_ascii=False))

order_by('-id'):是将结果集根据ID倒序排序

补充知识:django执行sql根据字段显示对应的数据方式

L = []
cursor.execute(sql)
desc = cursor.description # 获取字段的描述,默认获取数据库字段名称
data_dict = [dict(zip([col[0] for col in desc], row)) for row in
       cursor.fetchall()] # 列表表达式把数据组装起来
for online_dict in data_dict:  # 判断如果时间类型要转出字符串,后期碰到什么类型不能转的在加
  for key in online_dict:
    if type(online_dict[key]) in (datetime, pymysql.TIMESTAMP, pymysql.DATE,
                   pymysql.TIME, YEAR):
      online_dict[key] = online_dict[key].strftime(
        "%Y-%m-%d %H:%M:%S")
    else:
      pass
  L.append(online_dict)
conn.commit()
cursor.close()
conn.close()
dic['code'] = '2'
dic['message'] = ''
dic['result'] = L
return HttpResponse(json.dumps(dic, ensure_ascii=False))

以上这篇django执行数据库查询之后实现返回的结果集转json就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python基于xml parse实现解析cdatasection数据
Sep 30 Python
python使用win32com库播放mp3文件的方法
May 30 Python
Python算法之求n个节点不同二叉树个数
Oct 27 Python
python将字典内容存入mysql实例代码
Jan 18 Python
Python读取properties配置文件操作示例
Mar 29 Python
Python模拟登录的多种方法(四种)
Jun 01 Python
Python 类的特殊成员解析
Jun 20 Python
pyqt5 键盘监听按下enter 就登陆的实例
Jun 25 Python
Python PyQt5 Pycharm 环境搭建及配置详解(图文教程)
Jul 16 Python
python脚本执行CMD命令并返回结果的例子
Aug 14 Python
关于Keras Dense层整理
May 21 Python
Selenium之模拟登录铁路12306的示例代码
Jul 31 Python
Python super()方法原理详解
Mar 31 #Python
django实现更改数据库某个字段以及字段段内数据
Mar 31 #Python
django rest framework serializer返回时间自动格式化方法
Mar 31 #Python
Python @property及getter setter原理详解
Mar 31 #Python
关于Django Models CharField 参数说明
Mar 31 #Python
Django Serializer HiddenField隐藏字段实例
Mar 31 #Python
Django-xadmin+rule对象级权限的实现方式
Mar 30 #Python
You might like
php中的MVC模式运用技巧
2007/05/03 PHP
JavaScript 面向对象的之私有成员和公开成员
2010/05/04 Javascript
根据一段代码浅谈Javascript闭包
2010/12/14 Javascript
JavaScript常用对象的方法和属性小结
2012/01/24 Javascript
javascript检查浏览器是否支持flash的实现代码
2014/08/14 Javascript
深入理解JavaScript系列(19):求值策略(Evaluation strategy)详解
2015/03/05 Javascript
JavaScript使用addEventListener添加事件监听用法实例
2015/06/01 Javascript
KnockoutJS 3.X API 第四章之数据控制流if绑定和ifnot绑定
2016/10/10 Javascript
轻松理解JavaScript之AJAX
2017/03/15 Javascript
Nodejs基于LRU算法实现的缓存处理操作示例
2017/03/17 NodeJs
JQuery和html+css实现带小圆点和左右按钮的轮播图实例
2017/07/22 jQuery
Vue之mixin全局的用法详解
2018/08/22 Javascript
使用Angular自定义字段校验指令的方法示例
2019/02/01 Javascript
python下os模块强大的重命名方法renames详解
2017/03/07 Python
flask使用session保存登录状态及拦截未登录请求代码
2018/01/19 Python
便捷提取python导入包的属性方法
2018/10/15 Python
python实现Virginia无密钥解密
2019/03/20 Python
如何使用python实现模拟鼠标点击
2020/01/06 Python
tensorflow 固定部分参数训练,只训练部分参数的实例
2020/01/20 Python
python高阶函数map()和reduce()实例解析
2020/03/16 Python
Python小白垃圾回收机制入门
2020/06/09 Python
详解python程序中的多任务
2020/09/16 Python
Python爬虫简单运用爬取代理IP的实现
2020/12/01 Python
纯CSS3打造动感漂亮时尚的扇形菜单
2014/03/18 HTML / CSS
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
2013/03/30 面试题
销售业务实习自我鉴定
2013/09/23 职场文书
倡议书格式范文
2014/04/14 职场文书
蟋蟀的住宅教学反思
2014/04/26 职场文书
人民调解协议书范本
2014/10/11 职场文书
2014年质检员工作总结
2014/11/18 职场文书
导游词开场白
2015/01/31 职场文书
汶川大地震感悟
2015/08/10 职场文书
加强党性修养心得体会
2016/01/21 职场文书
高中信息技术教学反思
2016/02/16 职场文书
创业计划书之美甲店
2019/09/20 职场文书
MySQL 分页查询的优化技巧
2021/05/12 MySQL