问题标签 [drf-yasg]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1106 浏览

django-rest-framework - drf-yasg,仅查看某些端点的更简单方法?

我们有许多应用程序和端点,当我们处理某些功能时,更容易通过 yasg 向客户端公开某些端点。

目前我在每个应用程序中为 swagger 定义单独的 urlpatterns 并从上部 url 聚合它。

在每个应用程序中执行以下操作(选择性地包含端点)

并从其他地方聚合 urlpatterns

它有效,但有点乏味,想知道是否有更好的方法?

0 投票
1 回答
5856 浏览

django - 这些参数在 swagger_auto_schema (Django) 中意味着什么?

该项目使用招摇。有以下代码。

请解释每个论点的作用。我阅读了文档,但了解甚少......特别感兴趣'200': VideoSerializer

0 投票
1 回答
4268 浏览

django - drf-yasg 提供了错误的 URI 路径

在我的应用程序中,我需要为多个客户端提供多个带有分组端点的 Swagger 页面。

我的一个客户(路径)提供移动应用 API,另一个提供 Web 客户端 API。URL 模式相应地保持在 2 个不同的位置urls.py

我正在使用drf-yasg为我的 API 生成架构。

为了生成swagger规范,我schema_views为每个urls.py文件分别初始化 2 个,如下所示:

Wheremobile_patternsweb_patterns只是 url 模式的列表。

如果我打开http://localhost:8000/api/mobile/docs或者http://localhost:8000/api/web/docs我确实看到了为两个模式列表正确生成的模式,但是如果我尝试直接从swagger规范页面发出请求,所有端点都会返回404错误——它们都试图在不提供完整路径的情况下对不存在的 url 模式发出请求到端点。

因此,如果我从mobile端点发出对任何视图的请求,swagger 会尝试在

http://localhost:8000/some_mobile_url/代替http://localhost:8000/api/mobile/v3/some_mobile_url/

另一个模式的情况也是如此,错误地请求http://localhost:8000/some_web_url/而不是使用完整路径 http://localhost:8000/api/web/v3/some_web_url/

显然,能够直接通过测试 APIswagger非常重要,因此在我的情况下,规范本身是不够的。

这是我错误配置swaggeritlesf 的一个问题,还是我应该以某种方式提供路径,swagger以便它相应地为每个 url 预先设置完整路径?

0 投票
2 回答
467 浏览

django - drf-yasg 如何在外面显示 api 描述?

我想要那里的描述: 但我的在那里: 这是我的代码:
图片1

图 2

版本信息:
Django==2.2.1
drf-yasg==1.16.1

0 投票
1 回答
527 浏览

django - 使用 drf-yasg,如何使用静态模式和管理自定义权限?

我有点困惑如何使用 drf-yasg 库开发文档。所以我想确切地问一下:

  1. 如何使用drf-yasg在线使用 swagger 编辑器创建的静态 swagger.json文件?(我的项目中有一些端点没有序列化器和模型,所以我手动创建了模式!)

  2. 我的项目使用具有自定义管理的权限控制。如果不允许用户查看特定端点,是否有任何方法可以管理架构中的端点 url?

0 投票
1 回答
867 浏览

python - AttributeError:“响应”对象没有属性“标签”drf-yasg

我是第一次集成drf-yasq swagger,对不起!如果我的问题很愚蠢。我从这里阅读了文档https://drf-yasg.readthedocs.io/en/stable/readme.html并按照说明操作并以AttributeError: 'Response' object has no attribute 'label'. 原始代码来自https://drf-yasg.readthedocs.io/en/stable/readme.html。请在我缺乏的地方帮助我:

终端:

设置.py

网址.py

0 投票
1 回答
1940 浏览

django-rest-framework - 为什么不工作 drf-yasg openapi 文档?

为什么不使用 drf-yasg 文档。我只看到默认设置。

意见

0 投票
1 回答
4519 浏览

django - 使用 django 和 drf-yasg 重用序列化程序的问题

我正在使用 django、django drf 和 drf-yasg 来生成编写我的 BE 并生成文档。

我有一个名为 User 的模型和一个用于用户的序列化程序:

我有一些方法 Foo 可以获得两个用户。这是请求的序列化程序的样子:

当我为此生成一个swagger json方案时,我查看了json和redoc,我看到了:

  1. first_user 和 second_user 具有相同的引用名称 ($ref)
  2. second_user 和 redoc 的描述为“第一个用户”而不是第二个用户。这是因为描述取自具有第一个用户描述的 $ref。

我注意到,如果我确保引用名称是不同的,那么 redoc 就可以很好地读取,因为 first_user 和 second_user 得到了他们自己的描述。问题来了,因为我还希望以后能够使用 swagger codegen 创建 Java 存根,所以解决方案和据我所知,每个不同的 ref 名称都有一个不同的类。理想情况下,我会看到对 foo 的调用类似于

这让我想到了一个问题:

  • 如果 first_user 和 second_user 具有相同的 ref 名称,则 redoc 读取错误并且第二个用户具有第一个用户描述。
  • 如果 first_user 和 second_user 具有不同的引用名称,那么 redoc 可以工作,但我会生成两个不同的类,比如

    Foo(FirstUser first_user, SecondUser second_user)

我需要做什么才能使重做和生成的类都按预期工作?

0 投票
1 回答
2637 浏览

django - Openapi 3 与 Django drf

我正在使用 Django 和 Django-Drf 来编写一个宁静的 BE。

我还使用 drf-yasg 为我的服务生成 swagger 方案。

不幸的是,drf-yasg 还不支持 OpenApi3,而且在可预见的将来似乎也不会支持。

是否有替代 drf-yasg,它支持我可以与 Django-Drf 一起使用的 Openapi 3?

0 投票
1 回答
370 浏览

django-rest-framework - 如何使用 drf_yasg 显示排序

如何处理 drf_yasg 中的排序?

我有一个观点:

但是当我大摇大摆地打开时,我看不到这种可能性。