之前我们学习的都是处理书籍或者出版社的所有的数据的方法,下面我们来看下处理单个书籍,或者单个出版社的方法 这个时候我们就需要重新写一个类,这个类的方法,就需要有3个参数,参数1是self,参数2是request,参数3是id,因为我们是处理单条数据,所有必须要有一个id 首先我们先写一个类,这个类主要序列化我们的model对象或者queryset的类,这里我们不对一对多和多对多字段做特殊的显示处理,让他用默认值就好了,因为如果我们做特殊的处理,多对多字段在put请求和post请求的处理有点问题,…
一.restframework的序列化组件的使用 1.导入序列化组件与模型类 from rest_framework import serializers from app01.models import ( Book, Author, Publish ) 2.书写序列化类 # 创建一个序列化类 class BookSerializer(serializers.Serializer): ''' 开始使用序列化 - 导入模块:from rest_framework import serialize…
1.什么是序列化组件 在django中,自带一个序列化组件,它是用来将数据进行整理.转化成特定的为一个特定的格式(比如json数据格式),然后传输给前端,以便前端对数据进行处理操作. 2.为什么要用序列化组件 当我们从数据库取出一些数据时,我们需要将数据转成特定的格式,比如列表套字典的形式,然后将这些数据序列化成json的格式传输给前端,这就需要我们在后端把数据库里的数据每一个都遍历取值出来,这样比较麻烦,而且当数据字段很多的时候,我们很多遍历出来!代码如下: 后端代码: from django…
一:django自带序列化组件 Django内置的serializers(把对象序列化成json字符串) from django.core import serializers def test(request): book_list = models.Book.objects.all() ret = serializers.serialize('json', book_list) return HttpResponse(ret) 二: rest-framework序列化之Serializer…
Django和Ajax 一.什么是Ajax AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步的Javascript和XML”.即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML) AJAX 不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行. 同步交互:客户端发出一个请求后,需要等待服务器响应结束后,才能发出第二个请求: 异步交互:客户端发出一个请求后,无需等待服务器响应结束,就可…
一:HyperlinkedIdentityField(用的很少):传三个参数:第一个路由名字,用来反向解析,第二个参数是要反向解析的参数值,第三个参数:有名分组的名字 -1 publish = serializers.HyperlinkedIdentityField(view_name='ttt',lookup_field='publish_id',lookup_url_kwarg='pky') -2 view_name:路由的别名,lookup_field:根据表的哪个字段,来拼路径,look…
首先,因为我们安装了restframework,所以我们需要在django的settings中引入restframework INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'app1.…
这里的介绍的serializers.ModelSerializer就和我们之前学习的modelform一样 serializers.ModelSerializer如下几个功能 1.序列化queryset数据 2.反序列化json数据,将反序列化后的数据转换成model对象 3.反序列化的时候还是可以对数据做校验 4.如果合法,可以调用sava方法进行post或者put请求操作 5.如果不合法,则返回错误 下面我们进入serializers.ModelSerializer的学习 首先写一个mode…
rest-framework之APIView 一 安装djangorestframework 方式一:pip3 install djangorestframework 方式二:pycharm图形化界面安装 方式三:pycharm命令行下安装(装在当前工程所用的解释器下) 二 djangorestframework的APIView分析 as_view 方法 @classmethod def as_view(cls, **initkwargs): """ Store the or…
rest-framework序列化之Serializer models.py from django.db import models # Create your models here. class Book(models.Model): title=models.CharField(max_length=32) price=models.IntegerField() pub_date=models.DateField() publish=models.ForeignKey("Publish&…