03 Django REST Framework 视图和路由】的更多相关文章

01-DRF中的request 在Django REST Framework中内置的Request类扩展了Django中的Request类,实现了很多方便的功能--如请求数据解析和认证等. 比如,区别于Django中的request从request.GET中获取URL参数,从request.POST中取某些情况下的POST数据. 在APIView中封装的request,就实现了请求数据的解析: 对于GET请求的参数我们通过request.query_params来获取. 对于POST请求.PUT…
Django Rest Framework 视图和路由   DRF的视图 APIView 我们django中写CBV的时候继承的是View,rest_framework继承的是APIView,那么他们两个有什么不同呢~~~ urlpatterns = [ url(r'^book$', BookView.as_view()), url(r'^book/(?P<id>\d+)$', BookEditView.as_view()), ] 我们可以看到,不管是View还是APIView最开始调用的都是…
昨日内容回顾 1. Serializer(序列化) 1. ORM对应的query_set和ORM对象转换成JSON格式的数据 1. 在序列化类中定义自定义的字段:SerializerMethodField 在类中定义 get_自定义字段名(self, obj)方法 2. read_only 只在显示(查询)时才会有效. 2. 对前端POST过来的数据做有效性的校验 1. 一定要将数据以data=的形式传递到序列化类中!!! ser_obj = CommentSerializer(data=com…
[Django REST framework - 视图组件之视图基类.视图扩展类.视图子类.视图集] 视图继承关系 详图见文章末尾 视图组件可点我查看 两个视图基类:APIView.GenericAPIView from rest_framework.views import APIView APIView与View的不同之处在于: 传入到视图方法中的是REST framework的Request对象,而不是Django的HttpRequeset对象: 视图方法可以返回REST framewor…
目录 Django REST framework 视图GenericAPIView GenericAPIView 例子 属性 混入 具体视图类 自定义基类 Django REST framework 视图GenericAPIView GenericAPIView 这个类扩展了REST框架的APIView类,通过GenericAPIView与一个或多个mixin类组合而构建的 例子 在使用通用视图时,将覆盖原视图,并设置多个类属性 from django.contrib.auth.models i…
一.Django的View(视图) 1.介绍 一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应. 响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. 无论视图本身包含什么逻辑,都要返回响应. 代码写在哪里也无所谓,只要它在你当前项目目录下面. 大家约定俗成将视图放置在项目(project)或应用程序(app)目录中的名为views.py的文件中. 2.FBV和CBV(Function Base Vie…
混合类阶段(封装2次) 路由: url(r'school/$', views.SchoolView.as_view()), url(r'school/(?P<pk>\d+)/$', views.SchoolDetail.as_view()), 序列化: from rest_framework import serializers from app01 import models class AuthorModelSerializers(serializers.ModelSerializer):…
视图 在上面序列化的组件种已经用到了视图组件,即在视图函数部分进行逻辑操作. 但是很明显的弊端是,对每个表的增删改查加上 单条数据,需要用到 2个类 5个方法(增删改查,单数据查)才可以完整的实现,当表的数量较大的时候,就很蠢了. 因此 rest framework 也对这个进行了多层的封装. 源码位置  rest_framework.viewsets rest_framework.generics rest_framework.mixins 最底层的三个基础文件 rest_framework.…
路由Routers 注意是:对于视图集ViewSet!!!我们除了可以自己手动指明请求方式与动作action之间的对应关系外,还可以使用Routers来帮助我们快速实现路由信息. REST framework提供了两个router SimpleRouter DefaultRouter 1. 使用方法 1) 创建router对象,并注册视图集,例如 from rest_framework import routers router = routers.SimpleRouter() router.r…
Django中的APP -Django中的一个APP就是一个应用的意思 -项目可以包含多个APP(多个应用) -一个项目对应一个网站(生活服务网站) 一个APP队形网站的一个应用(二手交易,家政服务) 创建一个APP 在manage.py文件下打开cmd命令行: 输入:python manage.py startapp main HTTP请求处理 -通过如下网址获取所有学习信息 http://localhost/student 具体过程如下 -请求发送到后端 -wsgi server 传递给Dj…