栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Python

Django中queryset转JSON的方法

Python 更新时间:发布时间: 百科书网 趣学号

Django QuerySet 转换为 Json 数据的方法
    • 方法1:函数 serializers.serialize()
    • 方法2:python的list()

方法1:函数 serializers.serialize()
from EmployeeManage import models as emd
from django.core import serializers
    dept_list = serializers.serialize("json", emd.Department.objects.all()) #方法1
    print(dept_list)

用这个方法取出来的数据是这样的:

[{“model”: “EmployeeManage.department”, “pk”: “MB001”, “fields”: {“depart”: “技术部”}}, {“model”: “EmployeeManage.department”, “pk”: “MB002”, “fields”: {“depart”: “市场部”}}, {“model”: “EmployeeManage.department”, “pk”: “MB003”, “fields”: {“depart”: “采购部”}}]

这种格式的数据一些前端的控件读取不了,比如easyui的combobox、datagrid等

方法2:python的list()
from EmployeeManage import models as emd
from django.core import serializers
   dept_list = list(emd.Department.objects.all().values()) #一定是.values()哦
    print(dept_list)

用第二个方法取出来的数据是这样的:

[{‘id’: ‘MB001’, ‘depart’: ‘技术部’}, {‘id’: ‘MB002’, ‘depart’: ‘市场部’}, {‘id’: ‘MB003’, ‘depart’: ‘采购部’}]

这样就可以被控件读取了,用模版标签传值的话记得加上过滤器safe,不然网页会出现问题

$("#dptname").combobox({
        panelHeight:'auto',
     data:{{ depart_list|safe  }},
        textField:'depart',
        valueField:'id',
    });
转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/987125.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号