欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > 快速入手-基于Django-rest-framework的mixins混合类(五)

快速入手-基于Django-rest-framework的mixins混合类(五)

2025/4/1 19:35:28 来源:https://blog.csdn.net/zsb706496992/article/details/146564894  浏览:    关键词:快速入手-基于Django-rest-framework的mixins混合类(五)

1、基于上一章节去修改

创作中心-CSDN

2、只需要修改视图类views.py

from django.shortcuts import render, HttpResponse
from rest_framework.response import Response
from rest_framework.generics import GenericAPIView
from rest_framework.mixins import (ListModelMixin,CreateModelMixin,RetrieveModelMixin,UpdateModelMixin,DestroyModelMixin,
)
from .models import *
from api.serializer import *# Create your views here.class Linkapi(GenericAPIView, ListModelMixin, CreateModelMixin):queryset = Link.objects.all()serializer_class = LinkSerializer#  查看所有字段def get(self, request):# xuliehua = self.get_serializer(instance=self.get_queryset(), many=True)# return Response(xuliehua.data)return self.list(request)# 新增数据def post(self, request):# xuliehua = self.get_serializer(data=request.data)# if xuliehua.is_valid():#     xuliehua.save()#     return Response(xuliehua.data)# else:#     return Response(xuliehua.errors)return self.create(request)# 指定一条的请求 删除  查一条、修改一条
class Linkapidetail(GenericAPIView, RetrieveModelMixin, UpdateModelMixin, DestroyModelMixin
):queryset = Link.objects.all()serializer_class = LinkSerializer# 查询单条记录def get(self, request, pk):# xuliehua = self.get_serializer(instance=self.get_object(), many=False)# return Response(xuliehua.data)return self.retrieve(request, pk)# 更新单条数据def put(self, request, pk):# xuliehua = self.get_serializer(instance=self.get_object(), data=request.data)# if xuliehua.is_valid():#     xuliehua.save()#     return Response(xuliehua.data)# else:#     return Response(xuliehua.errors)return self.update(request, pk)# 更新单条数据中的部分字段  ,和put方法里边内容几乎一样,除了partial=Truedef patch(self, request, pk):# xuliehua = self.get_serializer(#     instance=self.get_object(), data=request.data, partial=True# )# if xuliehua.is_valid():#     xuliehua.save()#     return Response(xuliehua.data)# else:#     return Response(xuliehua.errors)return self.update(request, pk, partial=True)def delete(self, request, pk):# self.get_object().delete()# return Response("删除成功")return self.destroy(request, pk)

3、用apifox测试正常

4、 代码下载

链接: https://pan.baidu.com/s/16zZ1HwGxckGsHyAd-gvs3g?pwd=wpx4 提取码: wpx4 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词