DRF视图集的使用】的更多相关文章

在我们用DRF视图集完成了查找全部部门,创建一个新的部门,查找一个部门,修改一个部门,删除一个部门的功能后,views.py的代码是这样子的: class DepartmentViewSet(ModelViewSet): queryset = Department.objects.all() serializer_class = DepartmentSerializer 现在需要新增一个功能,查询最新成立的部门. 这时,我们就需要自定义action方法了. 新增功能后的代码如下: class D…
在使用DRF视图集时,往往需要配一大堆路由,例如: # views.py class DepartmentViewSet(ListModelMixin,CreateModelMixin,RetrieveModelMixin, UpdateModelMixin,DestroyModelMixin,GenericViewSet): queryset = Department.objects.all() serializer_class = DepartmentSerializer # urls.py…
一 视图集与路由的使用 使用视图集ViewSet,可以将一系列逻辑相关的动作放到一个类中: list() 提供一组数据 retrieve() 提供单个数据 create() 创建数据 update() 保存数据 destory() 删除数据 ViewSet视图集类不再实现get().post()等方法,而是实现动作 action 如 list() .create() 等. 视图集只在使用as_view()方法的时候,才会将action动作与具体请求方式对应上. 1.1 常用的视图集父类 1 Vi…
视图集ViewSet 使用视图集ViewSet,可以将一系列逻辑相关的动作放到一个类中: list() 提供一组数据 retrieve() 提供单个数据 create() 创建数据 update() 保存数据 destory() 删除数据 ViewSet视图集类不再实现get().post()等方法,而是实现动作 action 如 list() .create() 等. 视图集只在使用as_view()方法的时候,才会将action动作与具体请求方式对应上.如: class BookInfoVi…
# 原创,转载请留言联系 如果要把同一种http请求方法的多个接口放在同一个视图中,比如:查询多条数据和一条数据都是get请求,放在同一个视图里,应该怎么做呢??? 如果直接放在一起,会怎样呢? # 视图: class DepartmentTestView(ListAPIView, RetrieveAPIView): queryset = Department.objects.all() serializer_class = DepartmentSerializer # 路由: urlpatte…
1.说明:DRF框架中的视图集: 在drf开发接口中,使用GenericAPIView和视图扩展类结合起来完成接口功能是一件很常见的事情,所以,drf的作者帮我们提前把  GenericAPIView和视图扩展类结合子类也声明了出来视图子类中还帮我们定义对应接口的视图方法代码,所以我们无需在视图中重复编写对用的视图方法了.案例代码: view.py from rest_framework.generics import ListAPIView,CreateAPIView # ListAPIVie…
五个扩展类 (1)ListModelMixin 列表视图扩展类,提供list(request, *args, **kwargs)方法快速实现列表视图,返回200状态码. 该Mixin的list方法会对数据进行过滤和分页. 源代码: class ListModelMixin(object): """ List a queryset. """ def list(self, request, *args, **kwargs): # 过滤 queryse…
REST framework 提供了众多的通用视图基类与扩展类,以简化视图的编写. 1.2个视图基类 1.1. APIView rest_framework.views.APIView APIView是REST framework提供的所有视图的基类,继承自Django的View父类. APIView与View的不同之处在于: 传入到视图方法中的是REST framework的Request对象,而不是Django的HttpRequeset对象: 视图方法可以返回REST framework的R…
目录 1.APIView 2.GenericAPIView:通用视图类 3.5个视图扩展类:ListModelMixin,CreateModelMixin,RetrieveModelMixin,UpdateModelMixin,DestroyModelMixin 4.GenericAPIView的视图子类:ListAPIView,CreateAPIView,RetrieveAPIView,UpdateAPIView,DestroyAPIView 5.视图集基类:ViewSet,GenericVi…
目录 DRF 视图组件 视图组件大纲 两个视图基本类 五个扩展类 九个子类视图 视图集 常用视图集父类 魔法类 一览表 DRF中视图的"七十二变" 第一层:基于APIview的五个接口 第一层五个接口demo 第二层:基于GenericAPIView的五个接口 常用类属性: 第二层五个接口demo 第三层:基于GenericAPIView+五个视图扩展类写 第三层五个接口demo GenericAPIView速写五个接口demo 第四层:GenericAPIView+九个视图子类写五个…