DRF-类视图(GenericAPIView)

from rest_framework.views import APIView
from meituan.models import Merchant
from django.http import Http404
from .serializers import MerchantSerializer
from rest_framework.response import Response
from rest_framework import status
from rest_framework import generics

class MerchantView(
    generics.CreateAPIView,
    generics.UpdateAPIView,
    generics.DestroyAPIView,
    generics.RetrieveAPIView
):
    queryset = Merchant.objects.all()
    serializer_class = MerchantSerializer
    # lookup_field = 'name'

class MerthantListView(
    generics.ListAPIView
):
    queryset = Merchant.objects.all()
    serializer_class = MerchantSerializer
  • get_queryset(self):
    • 通过重写该方法实现复杂查询后返回queryset对象。return queryset
  • get_object(self):
    • 通过复写该方法实现数据检索时,返回一条数据
  • perform_creat(self,serializer):
    • 保存时调用的方法
  • perform_update(self,serializer):
    • 更新对象时调用
  • perform_destroy(self,serializer):
    • 删除对象的时候调用
posted @ 2021-01-01 16:44  xsan  阅读(22)  评论(0编辑  收藏