我有一个使用Django和Django REST Framework构建的API.我有一个模型返回一些构建的JSON,它与典型的Django模型不对应.因此,似乎利用有关Django模型的知识的自动文档功能对我的一些视图不起作用.
特别是,我有一个viewset返回一些典型的API视图(如对象列表),以及一些返回一些自定义对象的视图.我想为这些自定义对象构建文档,但我不确定如何覆盖视图集中特定端点的模式.如何覆盖为DRF视图集中的单个视图生成的模式?
DRF seems to provide this functionality for views,但我想为Viewsets做同样的事情.
最佳答案
好的,经过大量的尝试 – 失败 – 重试后,我终于让它工作 – 你失去了一些自动(神奇)内省,比如id路径参数和从文档字符串中获取的描述,但我还是值得的:
原文链接:https://www.f2er.com/python/438873.htmlcustom_schema = ManualSchema(
fields=[
coreapi.Field(
"id",required=True,location="path",schema=coreschema.String(
title="ID",description="Foobar ID.",)
),coreapi.Field(
"foobar",location="query",schema=coreschema.String(
title="Foobar",description="Foobar?",],description="Foobar!",)
class FoobarViewSet(viewsets.ReadOnlyModelViewSet):
@action(methods=["get"],detail=True,schema=custom_schema)
def foobar(self,request,id=None):
...