默认情况下,Python DB API会返回不带字段的结果,这意味着你得到的是一个列表,而不是一个字典。花费一点性能代价之后,你可以返回一个字典形式的结果,像这样:
def dictfetchall(cursor): "Returns all rows from a cursor as a dict" desc = cursor.description return [ dict(zip([col[0] for col in desc], row)) for row in cursor.fetchall() ]
demo:
from django.db import connection if __name__ == '__main__': """db=db_operate() sql='select DISTINCT t1.HostName,t2.IpAddress,t2.RegName,t2.AppUser,t2.`Desc` from machineinfo as t1,asset_appregioninfo as t2 where t1.IpAddress=t2.IpAddress;' result=db.mysql_command(settings.conn, sql) dic=dict(result) print dic """ cur=connection.cursor() cur.execute('select DISTINCT t1.HostName,t2.IpAddress,t2.RegName,t2.AppUser,t2.`Desc` from machineinfo as t1,asset_appregioninfo as t2 where t1.IpAddress=t2.IpAddress;') dic=dictfetchall(cur) print dic
这样在前台,就可以通过
{%for i in dic%}
{i.字段}
生成列表了
补充知识:[django] queryset系列化3种方式model_to_dict、serializers
我就废话不多说了,大家还是直接看代码吧!
# 序列化方式1: from django.forms.models import model_to_dict import json data=[] for obj in book_list: data.append(model_to_dict(obj)) print(data) return HttpResponse("ok") # 序列化方式2: data=serializers.serialize("json",book_list) return HttpResponse(data) # 序列化方式3: bs=BookSerializers(book_list,many=True) return Response(bs.data)
以上这篇django 数据库返回queryset实现封装为字典就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。
本文向大家介绍Python的Django框架实现数据库查询(不返回QuerySet的方法),包括了Python的Django框架实现数据库查询(不返回QuerySet的方法)的使用技巧和注意事项,需要的朋友参考一下 一、创建模型类: 执行以下命令,进行数据库的迁移: python manage.py makemigrations app_name[应用的名称] python manage.py m
本文向大家介绍django实现HttpResponse返回json数据为中文,包括了django实现HttpResponse返回json数据为中文的使用技巧和注意事项,需要的朋友参考一下 Python3读取写入json的中文乱码问题 之前我用django一般用JsonResponse来返回json数据格式 但是发现返回中文的时候会乱码 这种方式返回简单,但是中文会乱码 现在改成用HttpRespo
本文向大家介绍使用Django的JsonResponse返回数据的实现,包括了使用Django的JsonResponse返回数据的实现的使用技巧和注意事项,需要的朋友参考一下 urls.py 在views.py中创建show_view函数 到此这篇关于使用Django的JsonResponse返回数据的实现的文章就介绍到这了,更多相关Django JsonResponse内容请搜索呐喊教程以前的文
我遇到了这样的错误: 回溯: 文件“/usr/local/lib/python2.7/dist packages/django/core/handlers/exception.py”,位于内部41。响应=获取响应(请求) 文件“/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py”,位于_-get_-response
本文向大家介绍Python3实现的Mysql数据库操作封装类,包括了Python3实现的Mysql数据库操作封装类的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python3实现的Mysql数据库操作封装类。分享给大家供大家参考,具体如下: 这段代码需要注意几个地方: 1.数据库配置文件变量放在类外面,只在模块被载入的时候读一次,在使用数据库类时,无需再读取。这样有一个好处就是减少了IO
本文向大家介绍php简单实现查询数据库返回json数据,包括了php简单实现查询数据库返回json数据的使用技巧和注意事项,需要的朋友参考一下 示例代码一: 示例代码二: 以上所述就是本文的全部内容了,希望大家能够喜欢。