fix: 真正把 paper_pdf_view 从 swagger 端点枚举里剔除

上一次的 swagger_auto_schema(auto_schema=None) 只抑制 operation 渲染,路径仍进入 endpoints 字典并参与最长公共前缀计算,所以分组依旧塌成 api.改为在 .cls 上设置 swagger_schema = None,命中 EndpointEnumerator.should_include_endpoint 的提前返回(generators.py:66),路径根本不进枚举,公共前缀恢复 /api/.
This commit is contained in:
caoqianming 2026-05-06 14:28:02 +08:00
parent b8a397eef7
commit 326f6b35d5
1 changed files with 3 additions and 2 deletions

View File

@ -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()