Django Rest Framework:如何为基于函数的视图启用swagger文档

Abi*_* Mg 17 python django swagger django-rest-framework django-swagger

我浏览了Django REST Swagger 2.1.2文档.当我尝试使用基于类的视图时,它工作正常.

但我没有找到任何关于如何为基于函数的视图启用swagger的参考,如下所示:

@api_view(['GET', 'POST'])
def app_info(request): 
    ...
    return response
Run Code Online (Sandbox Code Playgroud)

我的大多数views.py都充满了基于功能的视图,就像上面一样.

如何启用相同的任何帮助将非常感激.谢谢!

我正在使用Django:1.8; Django REST Swagger:2.1.2; DRF:3.6.2

Igo*_*ato 15

你应该可以使用@renderer_classes装饰器:

from rest_framework_swagger import renderers
from rest_framework.decorators import api_view, renderer_classes


@api_view(['GET', 'POST'])
@renderer_classes([renderers.OpenAPIRenderer, renderers.SwaggerUIRenderer])
def app_info(request): 
    ...
    return response
Run Code Online (Sandbox Code Playgroud)

此外,值得一提的是,如果您不想在每个视图上使用此装饰器,您可以在设置中指定DEFAULT_RENDERER_CLASSES

编辑:毕竟它似乎在文档中.查看本页底部:https://django-rest-swagger.readthedocs.io/en/latest/schema/