
fastapi swagger 文档的嵌套展示
想要在 swagger 文档中展示嵌套结构,例如后台管理下包含用户管理和文章管理,用户管理下包含 a 接口和 b 接口,文章管理下包含 c 接口和 d 接口。
当前效果:
-
后台管理
情感家园企业站5.0 多语言多风格版下载一套面向小企业用户的企业网站程序!功能简单,操作简单。实现了小企业网站的很多实用的功能,如文章新闻模块、图片展示、产品列表以及小型的下载功能,还同时增加了邮件订阅等相应模块。公告,友情链接等这些通用功能本程序也同样都集成了!同时本程序引入了模块功能,只要在系统默认模板上创建模块,可以在任何一个语言环境(或任意风格)的适当位置进行使用!
- a 接口
- b 接口
- c 接口
- d 接口
-
用户管理
- a 接口
- b 接口
-
文章管理
- c 接口
- d 接口
期望效果:
-
后台管理
-
用户管理
- a 接口
- b 接口
-
文章管理
- c 接口
- d 接口
-
代码:
routerAdmin = APIRouter(
prefix='/admin',
tags=['后台管理']
)
# routerUser 包含 a, b 接口
routerAdmin.include_router(routerUser, prefix='/user')
# routerArticle 包含 c, d 接口
routerAdmin.include_router(routerArticle, prefix='/article')
app = FastAPI()
app.include_router(routerAdmin)实现:
目前 openapi 规范不支持嵌套结构。因此,无法使用 fastapi 的内置 swagger ui 来实现上述嵌套展示效果。
然而,可以通过使用第三方插件来实现嵌套展示。例如,fastapi-swaggerui-template 插件可以提供自定义 swagger ui 模版,并支持嵌套结构的展示。
但是,需要注意的是,第三方插件的使用可能会引入额外的依赖关系和复杂性,需要谨慎选择。









