Swagger UI接入配置

 

Swagger UI接入配置

这里的接入我们依赖于DRF官方推荐的一个第三方包: drf-yasg,下面的接入步骤其实都是按照这个第三方库的文档进行配置,这里只是个最最入门的使用,对于更加高阶或者定制化的需求,可以先参考官方文档,后续也会推出基于这个库进行定制化的文章。

其实,drf-yasg的接入是非常简单的,只需要在Django项目下实例化对应的scheme_view,然后添加对应的路由即可:

# django_project_name/urls.py
from drf_yasg import openapi
from drf_yasg.views import get_schema_view

schema_view = get_schema_view(
    openapi.Info(
        title="DRF TOOLS API",
        default_version="v1",
    ),
    public=True,
)

urlpatterns += [
    url(r"^swagger(?P<format>\.json|\.yaml)$", schema_view.without_ui(cache_timeout=0), name="schema-json"),
    url(r"^swagger/$", schema_view.with_ui("swagger", cache_timeout=0), name="schema-swagger-ui"),
    url(r"^redoc/$", schema_view.with_ui("redoc", cache_timeout=0), name="schema-redoc"),
]

 

错误处理:

AttributeError: module 'rest_framework.serializers' has no attribute 'NullBooleanField'

通过查询相关资料得知,在djangorestframework版本为3.14.0中,已经将'NullBooleanField'

这个属性删除了,详情可见下方解释
github.com
https://github.com/encode/django-rest-framework/pull/8599

 

所以若使用3.14.0的DRF涉及以上问题,那就一定会报这个错误!

那既然问题已经找到了那就很好解决啦

我们只要将DRF的版本降低一些就可以啦 本人使用版本为3.13.1

完美解决!!!

 

posted @   侬侬发  阅读(239)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示