时间:2021-05-22
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'] = Lreturn 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'] = Lreturn HttpResponse(json.dumps(dic, ensure_ascii=False))以上这篇django执行数据库查询之后实现返回的结果集转json就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
网站建设:数据库是如何进行访问IDC是一个传统的数据库查询工具,用来定义和执行数据库查询的SQL命令,并向浏览器返回一个指定数据格式的页面。使用IDC访问数据库
本文实例讲述了thinkPHP5实现的查询数据库并返回json数据。分享给大家供大家参考,具体如下:TP5实现查询数据库返回json数据(返回json数据函数实
如何通过twisted实现数据库异步插入? 1.导入adbapi 2.生成数据库连接池 3.执行数据数据库插入操作 4.打印错误信息,并排错#!/usr
本文实例讲述了php+mysql数据库查询的方法。分享给大家供大家参考。具体实现方法如下:复制代码代码如下:0){//如果返回的数据集行数大于0,则开始以表格的
本文所述为C#实现的Oracle数据库操作类,可执行超多常用的Oracle数据库操作,包含了基础数据库连接、关闭连接、输出记录集、执行Sql语句,返回带分页功能