[Drf] Источник наследования

# drf继承关系

View
APIView
    as_view:
        执行父类的as_view
        调用dispatch
    dispatch
        init_request
            request.queryparams
            request.Data
        init
            内容协商/版本
            认证/授权/限流

GenericAPIView
    get_queryset
    get_serializerclass
    过滤/分页

viewset
    重写as_view方法

ФПИ Reference Series

# drf和orm耦合度太高? 可以继承viewsets.ViewSet类.逃脱了gennericapiview
class ViewSet(ViewSetMixin, views.APIView):pass

class GetTaskIpLogViewSet(viewsets.ViewSet):

    def list(self, request, *args, **kwargs):
        data = get_task_ip_log("cat /etc/hosts")
        return Response(data)

рекомендация

отwww.cnblogs.com/iiiiiher/p/12006623.html