问题标签 [drf-spectacular]
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.
django-rest-framework - Django REST drf-嵌套字段的壮观错误检测
如果有多个字段与其他模型有关系,并且在序列化程序 Meta 类上指定了 depth>=1,则在为相应 url 生成的示例中,所有关系字段的值都具有相同的对象,例如:
模型:
序列化器:
echema 中的示例:
还有这个警告:
但如果不使用深度并且相关字段分配有它们的序列化程序,则模式是正确的:
序列化器:
架构中的示例:
使用深度进行嵌套时,如何生成正确的示例?
django-rest-framework - 将新请求示例附加到 drf-spectacular 模式
我知道为 drf-spectacular 使用的模式添加示例的方法是:
但是,我不想从头开始创建示例,而是想在自动生成的示例中添加一个新示例。
有没有办法做到这一点?或者至少,从序列化程序生成请求正文。
谢谢!
django - Django drf-spectacular 如何拆分 api 描述以供公共和私人使用?
我想制作 2 个不同的文档。一种是公开的,只有很少的 api 方法,没有 authz。另一种是用于所有 api 方法的私人使用,并且仅供授权用户使用。
python - drf-spectacular:将 OpenApiResponse 添加到无序列化程序的基于函数的视图中
因此,我正在使用以下代码记录以下代码drf-spectacular
:
我不明白该怎么做是如何记录响应。OpenApiResponse
即,有drf_spectacular.utils
但文档很薄。我如何用这个系统记录我的 API 的响应?
python - 在 DRF 中通过 @actoin 使用 @extend_schema 的问题
嗨,我的代码中有一个drf_spectacular库的@extend_schema我需要在我的@action上使用它来自定义 OpenAPI 中的详细信息,但是我遇到了这样的错误
这是我的代码:
我尝试将装饰器移到 @action 的下方但不起作用 @extend_schema 实际上我没有收到任何错误但在 OpenAPI 中它不起作用
当我从我的代码中删除@command.mapping.post时,它的工作也很好
django - 使用 drf-spectacular 和 x-www-form-urlencoded 请求的 Swagger UI 示例
是否可以生成一个包含 application/json和x-www-form-urlencoded 请求主体的示例的招摇的 UI 页面(以及重做)?我可以获取 application/json 的示例,但在选择 x-www-form-urlencoded 作为 swagger/redoc UI 的请求类型时不能。
我将以下装饰器用于“创建”方法(在 ModelViewSet 中)
其中 MySerializer 如下所示...
swagger/redocs UI 很乐意为应用程序/json 请求正文提供一个带有“示例输入”的示例 dropbox(选择示例将填充 json),但对于 x-www-form-urlencoded 将只显示一个要填写的表单在,没有示例 Dropbox 以填充字段。
我可以获得查询字符串的示例(及其选择下拉框),即在制作使用 OpenApiParameter 的 GET 端点时,例如
选择一个下拉框条目将填充文本字段。
但是,对于 x-www-form-urlencoded,这似乎没有生成?
这可能吗?难道我做错了什么?
django - 如何使用 `drf-spectacular` 记录 ViewSet 的各个操作?
使用 DRF 的内置 API 记录方式,我能够编写如下所示的文档字符串,并且每个操作都由其对应的行记录:
我正在切换到 library drf-spectacular
,它允许轻松生成符合 OpenAPI 的方案。但是,现在为每个操作呈现相同的文档字符串,这使得我的文档非常冗长且多余。
有没有办法只为每个操作呈现文档字符串的相关部分?
django - 带有 drf_spectacular Swagger 的 Django 4 不执行 POST
我有以下使用django-restframework
and的类drf-spectacular
。我可以在登录时通过 drf 默认路由执行 POST,但不能使用这些swagger-ui
路由。
我可以去这个网址:http://example.com/api/schema/swagger-ui/#/organism/organism_create
但是当我点击Execute
按钮时,什么都没有发生。我希望显示 CURL 命令等。此外,我在服务器后端看不到响应。与 GET 方法相反。在这里,服务器打印:11/Feb/2022 22:34:02] "GET /api/organism/ HTTP/1.1" 200 275
我确实去了登录,并首先提供了我的用户名和密码。
这个设置有什么问题?
模型.py
序列化程序.py
视图.py
网址.py
设置.py
我尝试了不同的设置。使用BasicAuth..
,我得到一个询问用户名和密码的提示,但仍然没有任何反应。
当我尝试使用 Python 的request
模块发布内容时,服务器会打印: