第一:

pip install djangorestframework

第二:

在setting.py文件中的app添加名为:

 'rest_framework',

第三:再项目的APP下面新建名为(可以别的名字):serializers.py

第四:引入模型类到serializers.py,并在serializers.py中新建序列化类并定义要返回的字段

from rest_framework import serializers  #引入序列化的模块
from ceshi.models import ceshiList,recordList #引入模型类 class ceshiListSer(serializers.ModelSerializer):
detectionTime = serializers.DateTimeField(format="%Y-%m-%d %H:%M:%S", required=False, read_only=True) #用于重新设定时间的格式
class Meta:
model = ceshiList
fields=("id","ceshiname","number","statusList","detectionTime ")
# fields="__all__" #可以像上面一样定义字段,也可以这样全部 class recordListSer(serializers.ModelSerializer):
addTime = serializers.DateTimeField(format="%Y-%m-%d %H:%M:%S", required=False, read_only=True)
class Meta:
model = recordList
fields = ("id", "ceshi2name", "addTime","ipList")
# fields="__all__"

第五:在view.py中调用serializers.py中的类返回序列化的json

from ceshi.serializers import ceshiListSer,recordListSer
from ceshi.models import ceshiList,recordList
from django.http import JsonResponse #就简单使用一个进行说明
def ceshifunc():
ceshi = ceshiList.objects.all() #获取模型类对象集合
serializer = ceshiListSer(ceshi , many=True) #many=True 可以返回多条,如果没有添加,只返回第一条
return JsonResponse({"data": serializer.data}) #serializer.data是已经序列化的json数据

第六:如果前端需要不同样式的JSON格式,就需要在serializers.py中,再定义一个序列化类

django使用restframework序列化查询集合(querryset)的更多相关文章

  1. Django 数据库查询集合(多对多)

    Django 数据库查询集合(双下划线连表操作) 目录: 1.Django环境搭建 2.数据库建表 3.写入数据 4.查询语句 Django环境搭建 1.安装django pip install dj ...

  2. 从django的序列化到rest-framework 序列化

    1.利用Django的view实现返回json数据 from django.views.generic import View from goods.models import Goods class ...

  3. django models的点查询/跨表查询/双下划线查询

    django models 在日常的编程中,我们需要建立数据库模型 而往往会用到表与表之间的关系,这就比单表取数据要复杂一些 在多表之间发生关系的情形下,我们如何利用models提供的API的特性获得 ...

  4. rest-framework序列化

    快速实例 Quickstart 序列化 开篇介绍: ---- 一切皆是资源,操作只是请求方式 ----book表增删改查 /books/ books /books/add/ addbook /book ...

  5. Django的ORM常用查询操作总结(Django编程-3)

    Django的ORM常用查询操作总结(Django编程-3) 示例:一个Student model: class Student(models.Model): name=models.CharFiel ...

  6. Django 之 restframework 频率组件的使用

    Django 之 restframework 频率组件的使用以及源码分析 频率组件的使用 第一步,先写一个频率类,继承SimpleRateThrottle 一定要在这个类里面配置一个scop='字符串 ...

  7. Django 之restfromwork 序列化组件实现数据增删查改

    rest-framework序列化之Serializer models.py from django.db import models # Create your models here. class ...

  8. Django多条件筛选查询

    转自:https://www.jianshu.com/p/a86281df530e Django多条件筛选查询 主模型只存在外键一对多关系 模型设计 # 快捷筛选状态 class Status(mod ...

  9. django 3.1 序列化讲述

    序列化Django对象¶ Django的序列化框架提供了一种将Django模型"翻译"为其他格式的机制.通常,这些其他格式将基于文本,并用于通过电线发送Django数据,但是序列化 ...

随机推荐

  1. Dockerfile 多阶段构建实践

    写在前面 在Docker Engine 17.05 中引入了多阶段构建,以此降低构建复杂度,同时使缩小镜像尺寸更为简单.这篇小作文我们来学习一下如何编写实现多阶段构建的Dockerfile 关于doc ...

  2. cad转换成png,svg

    1.设置仓库可以在setting.xml中设置(也可以在pom中设置,设置项即可) <mirror> <id>AsposeJavaAPI</id> <name ...

  3. Unity遮罩之Mask、RectMask2D与Sprite Mask适用场景分析

    遮罩,顾名思义是一种可以掩盖其它元素的控件.常用于修改其它元素的外观,或限制元素的形状.比如ScrollView或者圆头像效果都有用到遮罩功能.本系列文章希望通过阅读UGUI源码的方式,来探究遮罩的实 ...

  4. VS 添加自定义--代码块 实现一秒创建方法

    创建一个方法 你是不是不可避免需要敲以下至少6行代码 现在教你一个方法 实现一秒创建完整方法 首先按照代码块规则创建代码块文件 代码块意义,是什么? 请参考: https://docs.microso ...

  5. springboot中@Mapper和@Repository的区别

    @Mapper和@Repository是常用的两个注解,两者都是用在dao上,两者功能差不多,容易混淆,有必要清楚其细微区别: 区别: @Repository需要在Spring中配置扫描地址,然后生成 ...

  6. mysql批量新增的语法

    ?useUnicode=true//语序编码反射光hi &characterEncoding=UTF-8//字符 &autoReconnect=true//自动连接 &useA ...

  7. os.read

    #-*-coding:utf-8-*-__author__ = "logan.xu"import oscmd_res=os.popen("ls").read() ...

  8. Ansible基础使用

    原文转自:https://www.cnblogs.com/itzgr/p/10233932.html作者:木二 目录 一 Ansible命令用法 1.1 免密钥 1.2 Ad-Hoc基础命令 1.3 ...

  9. 【数据库上】 第四讲 E-R模型基础知识

    第四讲 E-R模型基础知识 一.数据库设计过程 数据库设计的关键阶段? 各个阶段设计的主要任务? 基础条件:清楚一个应用系统的功能需求与数据需求(直接与用户交互.数据流程图示例/UML类图等) 核心阶 ...

  10. scikit-learn 1.0 版本新特性及变动前瞻性预览

    1 简介 就在几天前,著名的机器学习框架scikit-learn在pypi上释放了其1.0rc1版本,这里给大家科普一下,版本号中的rc是Release Candidate的简称,代表当前的版本是一个 ...