Django objects的查询结果转化为json的三种方式的方法


Posted in Python onNovember 07, 2018

第一种方式:

利用seriallizers

这个方法,官网的解释说:将复杂的数据结构变成json、xml或者其他的格式

import json
from django.core import serializers
def area2(request,id):

  data = {}
  province = serializers.serialize("json",AreaInfo.objects.filter(parea__isnull=True))
  data["data"] = json.loads(province)

  return JsonResponse(data,safe=False)

Django objects的查询结果转化为json的三种方式的方法

输出的结果如下:

{
data: [
{
model: "myapp1.areainfo",
fields: {
title: "北京市",
parea: null
},
pk: 110000
},
{
model: "myapp1.areainfo",
fields: {
title: "天津市",
parea: null
},
pk: 120000
},
{
model: "myapp1.areainfo",
fields: {
title: "河北省",
parea: null
},
pk: 130000
},

第二种方法,使用list,这也是三种中最简单的

def area2(request,id):

  data = {}
  province = AreaInfo.objects.filter(parea__isnull=True).values()
  data["data"] = list(province)

  return JsonResponse(data,safe=False)

结果如下:

Django objects的查询结果转化为json的三种方式的方法

{
data: [
{
id: 110000,
title: "北京市",
parea_id: null
},
{
id: 120000,
title: "天津市",
parea_id: null
},
{
id: 130000,
title: "河北省",
parea_id: null
},
{
id: 140000,
title: "山西省",
parea_id: null
},

第三种方法比较原始,利用for循环拼装:

def area2(request,id):

  data = AreaInfo.objects.filter(parea__isnull=True)
  list=[]
  for province in data:
    list.append([province.id,province.title])
  data={'data':list}

  return JsonResponse(data,safe=False)

运行结果如下:

Django objects的查询结果转化为json的三种方式的方法

{
data: [
[
110000,
"北京市"
],
[
120000,
"天津市"
],
[
130000,
"河北省"
],
[
140000,
"山西省"
],
[
150000,
"内蒙古自治区"
],
[
210000,
"辽宁省"
],

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python装饰器decorator介绍
Nov 21 Python
Python循环语句之break与continue的用法
Oct 14 Python
Scrapy使用的基本流程与实例讲解
Oct 21 Python
django自带调试服务器的使用详解
Aug 29 Python
Python 自动登录淘宝并保存登录信息的方法
Sep 04 Python
PHP统计代码行数的小代码
Sep 19 Python
python os.path.isfile()因参数问题判断错误的解决
Nov 29 Python
Python + Requests + Unittest接口自动化测试实例分析
Dec 12 Python
Python os模块常用方法和属性总结
Feb 20 Python
python编程进阶之类和对象用法实例分析
Feb 21 Python
Python json读写方式和字典相互转化
Apr 18 Python
python七种方法判断字符串是否包含子串
Aug 18 Python
Python将一个Excel拆分为多个Excel
Nov 07 #Python
python计算两个矩形框重合百分比的实例
Nov 07 #Python
numpy 计算两个数组重复程度的方法
Nov 07 #Python
python中for循环输出列表索引与对应的值方法
Nov 07 #Python
Python爬虫将爬取的图片写入world文档的方法
Nov 07 #Python
使用python批量读取word文档并整理关键信息到excel表格的实例
Nov 07 #Python
使用PM2+nginx部署python项目的方法示例
Nov 07 #Python
You might like
jQuery获取json后使用zy_tmpl生成下拉菜单
2015/03/27 PHP
变量在 PHP7 内部的实现(二)
2015/12/21 PHP
再谈PHP中单双引号的区别详解
2016/06/12 PHP
getElementById在任意一款浏览器中都可以用吗的疑问回复
2007/05/13 Javascript
自己开发Dojo的建议框架
2008/09/24 Javascript
JS打开图片另存为对话框实现代码
2012/12/26 Javascript
Javascript中判断变量是数组还是对象(array还是object)
2013/08/14 Javascript
jquery如何判断某元素是否具备指定的样式
2013/11/05 Javascript
js实现日期级联效果
2014/01/23 Javascript
jquery中的$(document).ready()使用小结
2014/02/14 Javascript
jQuery焦点图切换简易插件制作过程全纪录
2014/08/27 Javascript
JS实现自动固定顶部的悬浮菜单栏效果
2015/09/16 Javascript
基于jquery实现即时检查格式是否正确的表单
2016/05/06 Javascript
Vue结合原生js实现自定义组件自动生成示例
2017/01/21 Javascript
jQuery轮播图实例详解
2018/08/15 jQuery
angularjs实现table表格td单元格单击变输入框/可编辑状态示例
2019/02/21 Javascript
jquery实现点击弹出对话框
2020/02/08 jQuery
详解Vue之计算属性
2020/06/20 Javascript
Vue实现todo应用的示例
2021/02/20 Vue.js
[00:12]2018DOTA2亚洲邀请赛 Somnus丶M出阵单挑
2018/04/06 DOTA
布同 Python中文问题解决方法(总结了多位前人经验,初学者必看)
2011/03/13 Python
Python魔术方法详解
2015/02/14 Python
python Django批量导入不重复数据
2016/03/25 Python
BP神经网络原理及Python实现代码
2018/12/18 Python
Python从list类型、range()序列简单认识类(class)【可迭代】
2019/05/31 Python
python使用pip安装模块出现ReadTimeoutError: HTTPSConnectionPool的解决方法
2019/10/04 Python
python实现根据文件格式分类
2019/10/31 Python
浅谈pytorch、cuda、python的版本对齐问题
2020/01/15 Python
Python装饰器如何实现修复过程解析
2020/09/05 Python
使用py-spy解决scrapy卡死的问题方法
2020/09/29 Python
Prometheus开发中间件Exporter过程详解
2020/11/30 Python
Nicole Miller官方网站:纽约女装品牌
2019/09/14 全球购物
中专三年学习的个人自我评价
2013/12/12 职场文书
建设工程授权委托书
2014/09/22 职场文书
党支部组织生活会整改方案
2014/09/30 职场文书
2015初中生物教研组工作总结
2015/07/21 职场文书