zoukankan      html  css  js  c++  java
  • 【1122 | Day64】drf视图大家族及用法介绍

    drf框架|视图家族

    1. Views | 视图类

    将请求方式与视图类的同名方法建立映射,完成请求响应

    1)APIView

    • View的所有功能
    • 重写as_view禁用csrf认证
    • 重写dispatch:请求、响应、渲染、异常、解析、三大认证
    • 多了一堆类属性,可以完成视图类的局部配置

    2) GenericAPIView

    • APIView的所有功能

    • 三个属性:

      • queryset
      • serializer_class
      • lookup_url_kwarg
    • 三个方法:

      • get_object( ):获取单个(根据pk)
      • get_queryset( ):获取所有
      • get_serializer(*args, **kwargs):获取指定常用的几个参数
        • data:用于反序列化传参
        • many:获取多个序列化对象
        • instance:如果save执行,则更新方法;反之,创建方法
        • partial:True则进行局部字段修改;默认False

    2. mixins | 视图工具类

    • 五大工具类
      • RetrievModelMixin
      • ListModelMixin
      • CreateModelMixin
      • UpdateModelMixin
      • DestroyModelMixin
    • 六大工具方法
      • retrieve >>> 单取
      • list >>> 群取
      • create >>> 单增
      • update >>> 单整体改
      • partial_update >>> 单局部改
      • destroy >>> 单删

    3. generics | 工具视图类

    一堆mixins工具类与GenericAPIView视图基类组合

    4. 视图集基类

    1)ViewSet(ViewSetMixin,APIView):可以自定义映射关系的APIView

    2)GenericViewSet(ViewSetMixin,GenericAPIView):可以自定义映射关系的GenericAPIView

    5. ViewSetMixin | 视图集工具

    重写as_view( ),完成请求方式与视图方法的自定义映射

    as_view({'get': 'my_get'})
    

    6. 常用Model视图集

    1)ModelViewSet(mixins.CreateModelMixin,

    mixins.RetrievModelMixin,

    mixins.UpdateModelMixin,

    mixins.DestroyModelMixin,

    mixins.ListModelMixin,

    GenericViewSet):某一资源的六大操作视图集

    2)ReadOnlyModelViewSet(mixins.RetrievModelMixin,

    mixins.ListModelMixin,

    GenericViewSet):某一资源的只读操作视图集

  • 相关阅读:
    2020软件工程作业01
    问题清单
    2020软件工程个人作业06——软件工程实践总结作业
    感谢随笔
    2020软件工程作业05
    2020软件工程作业04
    2020软件工程作业03
    2020软件工程作业02
    2020软件工程作业01
    2020软件工程个人作业06——软件工程实践总结作业
  • 原文地址:https://www.cnblogs.com/fxyadela/p/11913754.html
Copyright © 2011-2022 走看看