From 326f6b35d5c23f424798da58013d7a326d23715e Mon Sep 17 00:00:00 2001 From: caoqianming Date: Wed, 6 May 2026 14:28:02 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=9C=9F=E6=AD=A3=E6=8A=8A=20paper=5Fpd?= =?UTF-8?q?f=5Fview=20=E4=BB=8E=20swagger=20=E7=AB=AF=E7=82=B9=E6=9E=9A?= =?UTF-8?q?=E4=B8=BE=E9=87=8C=E5=89=94=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 上一次的 swagger_auto_schema(auto_schema=None) 只抑制 operation 渲染,路径仍进入 endpoints 字典并参与最长公共前缀计算,所以分组依旧塌成 api.改为在 .cls 上设置 swagger_schema = None,命中 EndpointEnumerator.should_include_endpoint 的提前返回(generators.py:66),路径根本不进枚举,公共前缀恢复 /api/. --- apps/resm/views.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/resm/views.py b/apps/resm/views.py index 35d8d51..c61a82b 100644 --- a/apps/resm/views.py +++ b/apps/resm/views.py @@ -3,14 +3,12 @@ from django.http import FileResponse, Http404 from rest_framework.response import Response from rest_framework.decorators import api_view, permission_classes from rest_framework.permissions import AllowAny -from drf_yasg.utils import swagger_auto_schema from .models import Paper, PaperAbstract from .serializers import PaperListSerializer from apps.utils.viewsets import CustomGenericViewSet, CustomListModelMixin import os -@swagger_auto_schema(method='get', auto_schema=None) @api_view(['GET']) @permission_classes([AllowAny]) def paper_pdf_view(request, pk): @@ -29,6 +27,9 @@ def paper_pdf_view(request, pk): return response +paper_pdf_view.cls.swagger_schema = None + + # Create your views here. class PaperViewSet(CustomGenericViewSet, CustomListModelMixin): queryset = Paper.objects.all()