django使用restframework序列化查询集合(querryset)
第一:
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)的更多相关文章
- Django 数据库查询集合(多对多)
Django 数据库查询集合(双下划线连表操作) 目录: 1.Django环境搭建 2.数据库建表 3.写入数据 4.查询语句 Django环境搭建 1.安装django pip install dj ...
- 从django的序列化到rest-framework 序列化
1.利用Django的view实现返回json数据 from django.views.generic import View from goods.models import Goods class ...
- django models的点查询/跨表查询/双下划线查询
django models 在日常的编程中,我们需要建立数据库模型 而往往会用到表与表之间的关系,这就比单表取数据要复杂一些 在多表之间发生关系的情形下,我们如何利用models提供的API的特性获得 ...
- rest-framework序列化
快速实例 Quickstart 序列化 开篇介绍: ---- 一切皆是资源,操作只是请求方式 ----book表增删改查 /books/ books /books/add/ addbook /book ...
- Django的ORM常用查询操作总结(Django编程-3)
Django的ORM常用查询操作总结(Django编程-3) 示例:一个Student model: class Student(models.Model): name=models.CharFiel ...
- Django 之 restframework 频率组件的使用
Django 之 restframework 频率组件的使用以及源码分析 频率组件的使用 第一步,先写一个频率类,继承SimpleRateThrottle 一定要在这个类里面配置一个scop='字符串 ...
- Django 之restfromwork 序列化组件实现数据增删查改
rest-framework序列化之Serializer models.py from django.db import models # Create your models here. class ...
- Django多条件筛选查询
转自:https://www.jianshu.com/p/a86281df530e Django多条件筛选查询 主模型只存在外键一对多关系 模型设计 # 快捷筛选状态 class Status(mod ...
- django 3.1 序列化讲述
序列化Django对象¶ Django的序列化框架提供了一种将Django模型"翻译"为其他格式的机制.通常,这些其他格式将基于文本,并用于通过电线发送Django数据,但是序列化 ...
随机推荐
- Django静态文件配置 request对象 Django操作MySQL
Django中的文件介绍 render.HttpResponse和redirect 当我们想起手写一个项目,创建好应用并且注册之后,在urls.py文件先导入app文件夹下migrations下的vi ...
- Redis应用场景及缓存问题
1.应用场景 (1) 缓存 缓存机制几乎在所有的大型网站都有使用,合理地使用缓存不仅可以加快数据的访问速度,而且能够有效地降低后端数据源的压力.Redis 提供了键值过期时间设置,并且也提供了灵活 ...
- npm常用命令及其node相关工具汇总
它是一个事件驱动异步I/O单进程的服务端JS环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好. 浏览器是JS的前端运行环境. Node.js是JS的后端运行环 ...
- wpf 获得exe的运行路径
System.Reflection.Assembly.GetEntryAssembly().Location
- WPF 中的style 样式
WPF相较于以前学的WinForm,WPF在UI设计与动画方面的炫丽是最吸引我来学习的.在WPF中XMAL代码的引入使得代码的编写能够前后端分离,为获得更好的界面,也使得我们不得不分出一半的时间花在前 ...
- QT 中的QTableWidget
- 【SOE】 ArcGIS Server对象扩展(SOE)开发注意事项
ArcGIS Server对象扩展(SOE)开发注意事项 1.SOE介绍 在ArcGIS 10.1中ArcGIS Server不在支持DCOM方式的连接,这也就意味着我们不能通过本地方式的连接使用A ...
- jQuery中的层级选择器(四、二):后代元素、子元素、相邻元素、兄弟元素
<!DOCTYPE html> <html> <head> <title>层次选择器</title> <meta http-equiv ...
- MySQL读写IO的操作过程解析
数据库作为存储系统,所有业务访问数据的操作都会转化为底层数据库系统的IO行为(缓存系统也可以当做是key-value的数据库),本文主要介绍访问MySQL数据库的IO流程以及IO相关的参数. 一.My ...
- MySQL 源码安装规范
一 .目录规划 MySQL 的目录包括 base 目录和 data 目录,base 目录存放软件文件,每个版本的软件单 独一个目录,例如/usr/local/mysql/mysql5.6.19.dat ...