- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将 Swagger 集成到我的 Django Rest Framework API 中。我安装了相关的软件包并按照 Github 页面的快速入门指南进行操作。不过我遇到了一些问题。 Swagger 仅显示 View 的文档注释。
基本上我有一个APIView来解释给定的url(因为它可以有n个“ token ”,例如“/first/second/”或“/a/b/c/d/e/f/g” ) 进行数据库查询并根据请求类型和 url 末尾的资源选择正确的序列化器来返回数据。
如果我正确理解了 Swagger 的工作原理,它会使用序列化程序来获取示例 json 输入和其他要在 ui 中显示的相关数据。有什么方法可以明确告诉它应该使用的序列化器吗?
最后,这是我的 APIView 的 GET 代码示例,用于显示序列化器的用法。正如您所看到的,使用了两种不同的序列化器:
isValid = self.isValidUrl(request.path)
if not isValid:
return Response("Error: The url is empty.")
url = self.trimTheUrl(request.path)
print url
try:
target = models.APINode.objects.get(uniquePath=url)
perm = IsOwner()
perm.has_object_permission(request, self, target)
#check is the APINode collection or item:
if target.objectType == "item":
#return JSON data of the materialItem:
serializer = ProductSerializer(target.materialItem)
return Response(serializer.data)
else:
#find objects in this collection
children = models.APINode.objects.filter(parentPath=target.uniquePath)
serializer = APINodeSerializer(children, many=True)
return Response(serializer.data)
except models.APINode.DoesNotExist:
return Response("404: No such collection or materialItem.")
无论它的值(value)如何,API 代表了一个集合和资源结构,非常类似于具有 n 深路径的文件系统。
最佳答案
我找到了一种使用名为序列化器的标签来做到这一点的方法。一个例子是serializer: UserDocSerializer
。如果你是这样的:
"""
Your View
---
... All about parameters and types ...
serializer: UserDocSerializer
...
我遇到的问题是它总是试图让我从 View 导入序列化器,所以我必须在views.py中声明它,如下所示:
class UserDocSerializer(serializers.ModelSerializer):
class Meta:
model = UserProfile
fields = ('username', 'image')
这样你就可以得到你想要显示的字段
关于Django Rest Swagger 与 APIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24905189/
内容概要 ApiView+JsonResponse编写接口 ApiView+Response编写接口 ApiView源码解析 Request对象源码分析
我正在使用 Django Rest Framework 并使用 APIView 和序列化器形式添加新数据。我想在表单中添加一些帮助文本作为工具提示。由于表单是自动生成的,我需要一些帮助来了解如何将其添
我制作了一个 API 并想制作 swagger 文档。我不为此开发任何序列化。 Views.py class DeliveryView(APIView): renderer_classes =
我正在使用 Django 和 Django-Rest-Framework 为一个与学校相关的小型项目编写 API。我正在尝试找出权限。 我正在为我的 View 使用 APIView,并希望在不编写更多
我正在使用 Django 和 Django-Rest-Framework 为一个与学校相关的小型项目编写 API。我正在尝试找出权限。 我正在为我的 View 使用 APIView,并希望在不编写更多
我试图了解 vb.net 中的一些 WinAPI,但找不到用于 vb6 的 API 查看器工具。 VS2015 有没有更简单的东西? 是否有类似的方法将 WinAPI 代码从工具导入到 vb.net
我正在使用 APIView用于获取和发布项目。 我想使用 Django Rest Framework 为我的 API 实现分页,但它不起作用。 我想每页显示 10 个项目,但是当我这样做时 api/v
我需要更新 code字段与 patch APIView 中的方法. 到目前为止我有这个: class UserDetailView(APIView): def patch(self, requ
我正在尝试使用 Django Rest Framework 制作 APIView。当我将 View 与 url 相关联时,出现此错误: AssertionError: basename argumen
有什么区别APIView 类(class)和 View 集类(class) ? 我正在关注 Django REST-framework官方文档。我认为它缺乏示例。 你能用一个合适的例子来解释上面的区别
我是 Django 新手,我对 Django apiview 的自定义方法有点困惑。在ApiView中,如何创建自定义方法以及如何从axios调用。 例如 这是我的观点 class TimeSheet
我正在尝试将 Swagger 集成到我的 Django Rest Framework API 中。我安装了相关的软件包并按照 Github 页面的快速入门指南进行操作。不过我遇到了一些问题。 Swag
我有一个 APIView 类,用于显示所有租金以及发布和删除等。现在我想要搜索功能,所以我尝试使用 DjangoFilterBackend,但它不起作用。我在文档中看到,它已与 ListAPIView
我有一个权限类来检查 obj.account 是否等于 request.user.profile.account: class IsOwner(permissions.BasePermission):
有什么优势 View 集 , 模型 View 集 和 APIView . django-rest-framework 文档中没有说清楚,也没有说什么时候使用ViewSet、ModelViewSet和A
我正在尝试将 json 数据发布到我的 Django Rest Framework APIView。当我使用 DRF api 发布表单时一切正常,但是当我尝试使用外部应用程序(在我的例子中是 Angu
假设我想在 APIView.get 中返回一个包含 2 个属性的(非模型)对象,其中一个是模型对象,另一个是二进制图像 我尝试了几种方法,但在序列化程序方面遇到了问题。 谢谢! 序列化器: class
在 Django Rest Framework 中,是否可以在 APIView 类中调用自定义方法,类似于 .get() 或 .post() 将被调用。 我知道路由器可以使用 @action() 或
我有一个非常简单的APIView,但我不知道如何在这里设置分页。在这种情况下,我选择一个具有给定 pk 的 Event,然后我获得分配给此 Event 的所有 NewsItems。 paginatio
从下面看。我试图强制交易回滚。但是没有工作。数据仍然插入到数据库中。谁能给我正确的方法? class DocumentDetailView(APIView): def post(sel
我是一名优秀的程序员,十分优秀!