问题标签 [django-drf-renderer]

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 回答
121 浏览

django - Django Rest Framework 使用具有不同渲染器的视图集

使用 Django Rest Framework 也可以使用 Bootstrap 等来呈现我的 HTML 代码是否有意义......?如果不是,那么拆分 API 端点和 HTML 视图的最佳解决方案是什么?我公开了一个带有 DRF 视图集和 JSON 序列化程序的 API。它工作得很好。此外,我想添加这个 API 的 HTML 渲染版本并为其设计一个 HTML 表单。API 和 HTML 渲染版本都应该在同一台机器上运行。

提前致谢

0 投票
0 回答
57 浏览

django - Django REST Framework 更改基于响应的 rederer 类

我正在使用Django 2.2Django REST Framework

我有一个APIView将在成功响应时下载 Zip 文件的文件。

我创建了一个自定义渲染器类ZipRenderer

如果响应成功,这可以正常工作。但是在权限被拒绝异常的情况下,错误消息也是二进制编码的,并且没有正确呈现 JSON。

当我添加JSONRendererrenderer_classes

这在异常情况下工作正常,但在成功响应的情况下会出错。

如何根据响应更改渲染器?

0 投票
1 回答
590 浏览

django - drf-yasg 自定义 SwaggerUIRenderer

我想自定义 drf_yasg 生成的文档的样式(字体、颜色、徽标等)。

我看到我可以drf_yasg/swagger-ui.html使用块extra_headextra_stylesextra_body、进行扩展,extra_scripts如果需要,甚至可以覆盖其他块。

我不清楚的是我如何指向我的扩展模板swagger-ui.html

我从

我想SwaggerUIRendererMyCustomSwaggerUIRendererin替换,get_schema_view但不明白如何/在哪里做它而不明确地尝试枚举在某些子类中也需要的所有其他渲染器rest_framework.views.APIView,这似乎很复杂。

对文档或示例的指针表示赞赏。我已经阅读了https://drf-yasg.readthedocs.io/没有成功。

0 投票
0 回答
85 浏览

geojson - GDALException OGR 失败

我正在使用 Django DRF 和 GeoDjango 构建一个简单的模型,如下所示。

这是它的serializer.py

一切正常,直到我添加rest_framework_gis我的 settings.py 文件或在我的商店序列化程序中添加以下行

在这两种情况下都会出现 GDALException OGR 失败。我检查了我的 GDAL 和 Python 版本。两者都是 64 位的。python 和 GDAL 都运行良好。

我在这里基本上需要做的是将我的 POINT 字段转换为 json lat long 响应,现在响应就是这样(如果我不包括导致错误的行)。

请帮忙。

0 投票
2 回答
177 浏览

django - 如何通过 DRF 从 Django QuerySet 中将每一列作为一个列表

使用 Django-REST 框架,我有以下视图:

它返回一个带有以下形状的 JSON:

有没有办法将每一列作为值列表,如下所示:

JSON 的确切形状并不重要,只需将每个“列”(模型字段)作为所有值的列表,而不是将每一行作为字典。(因为数据然后被传递到期望数据位于单独列表中的库)

显然,我可以解压 QuerySet 并用 Python 重构它(例如在那个答案中),但我正在寻找某种方法来告诉 Django 或 DRF 首先像这样构建 JSON,而不是让 Django 和 DRF 构建结果以一种方式,然后再次迭代结果以对其进行重构。

0 投票
1 回答
677 浏览

django-rest-framework - Django rest 框架 XLSX 渲染器 + Apiview

我正在我的 API 上设置一个端点,它应该返回一个 XLSX 文件。DRF 文档提到https://github.com/wharton/drf-renderer-xlsx作为主要的外部渲染包,除了似乎也能够渲染 XLSX 的 pandas。

在他们的代码示例中,他们使用了与 mixin 配对的 ReadOnlyViewset,但没有提及它如何与 APIViews 一起使用。尽管如此,我还是想使用https://harshahegde.dev/rendering-xlsx-files-in-django-rest-framework-ckagk293p00eumks1bf4dlhie所示的 APIView 但是.. 这在使用 CURL 或 Postman 时效果很好,但是当通过浏览器完成我收到此错误:

据我了解,这是因为没有设置 Accept 标头(例如 'Accept':'application/xlsx'),我通过从 renderer_classes 中删除 Mixin 来解决此问题,因此它只返回一个名为“xlsx”的文件,但我可以' t 弄清楚如何在没有 mixin 的情况下设置文件名。如何使用试图从浏览器访问 URL 的 APIView 设置文件名?

我的观点:

0 投票
1 回答
199 浏览

python - Django Rest Framework: XLSXRenderer -- 如何检查查询集的条件并返回响应

目前,我正在尝试构建一个导出 excel 文件的函数。我只想知道有没有办法检查查询集是否为 None 然后我可以返回一个 Response({"message": "Exporting Fail, Empty"})

如果你知道我在哪里可以研究它会对我有很大帮助。太感谢了

0 投票
1 回答
74 浏览

django - DRF 规范化嵌套序列化程序以使用 XLSXRenderer 下载 excel 报告

我的模型中有一个ManyToMany字段。在序列化程序中,我能够获取嵌套的序列化数据,但我想对其进行规范化。

模型.py

序列化程序.py

上面的输出将是:

但我想输出这样的东西:

更新

视图.py

excel 报告应该有列:book_name,author_name

但是通过@Klim Bim 给出的解决方案,我得到了一个空的excel 报告,其中只有列名:book_nameauthors.

提前致谢。

0 投票
1 回答
42 浏览

django - Django Rest Framework ModelViewSet ManyToMany 字段覆盖 partial_update 方法不起作用 update_or_create

我在这里有个问题

我有两个模型

标签模型

轮廓模型

标签序列化器

配置文件序列化器

轮廓视图集

如果此名称不存在,我的目标是创建一个新标签,并更新个人资料标签

但我的代码不起作用,我不知道为什么

任何机构都可以帮忙吗?

0 投票
0 回答
30 浏览

python - 如何在 Django 中存储 http 错误响应

我通过 DRF 获取nameage存储在数据库中,并创建检查错误和响应错误以及 status_code 的中间件,当中间件错误发生时,例如 404“找不到页面,无效 URL”等。我想将其存储'error and status_code'在数据库中。所以我怎么能通过它。

模型:

意见:

中间件: