Django REST Swagger:Swagg没有检测到List和Retrieve函数

2024-04-26 07:26:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是django rest swagger版本:2.0.5和django rest框架版本:3.4.6。你知道吗

我意识到当我使用listretrieve函数时,Swagger无法将它们检测为新的端点。你知道吗

我的电脑里有以下代码视图.py文件:

from rest_framework.viewsets import ViewSet

class OrdersViewSet(ViewSet):
    lookup_field = 'uuid'

    def list(self, request: Request, *args, **kwargs):
        try:
            changeset = OrderSyncHelper().get_order_list_data()
            return Response(status=HTTP_200_OK, data=changeset)
        except (KeyError, ValueError) as e:
            return Response(status=HTTP_400_BAD_REQUEST, data=e.args)

    def retrieve(self, request: Request, uuid: str, *args, **kwargs):
        try:
            changeset = OrderSyncHelper().get_order_data(uuid)
            return Response(status=HTTP_200_OK, data=changeset)
        except (KeyError, ValueError) as e:
            return Response(status=HTTP_400_BAD_REQUEST, data=e.args)

我本来想在街上看到的openapi.json文件归档以下终结点:

  • 订单/
  • 订单/{uuid}/

但它们没有呈现。我是否应该为这些函数添加一些特定的内容,以便被Swagger检测到?你知道吗


Tags: django函数版本resthttpdatareturnuuid
1条回答
网友
1楼 · 发布于 2024-04-26 07:26:10

当我尝试将django rest swagger升级到version 2.1.1时,这个问题得到了修复。你知道吗

因此,在版本2.1.1中,Swagger能够检测使用retrievelist函数实现的端点

相关问题 更多 >