Files
fastapi-best-architecture/backend/utils/openapi.py
T
Wu Clan b73585ebd2 Optimize definitions of multiple utility functions (#1001)
* Optimize definitions of multiple utility functions

* Update plugin tools
2026-01-11 16:57:52 +08:00

30 lines
784 B
Python

from fastapi import FastAPI
from fastapi.routing import APIRoute
def simplify_operation_ids(app: FastAPI) -> None:
"""
简化操作 ID,以便生成的客户端具有更简单的 API 函数名称
:param app: FastAPI 应用实例
:return:
"""
for route in app.routes:
if isinstance(route, APIRoute):
route.operation_id = route.name
def ensure_unique_route_names(app: FastAPI) -> None:
"""
检查路由名称是否唯一
:param app: FastAPI 应用实例
:return:
"""
temp_routes = set()
for route in app.routes:
if isinstance(route, APIRoute):
if route.name in temp_routes:
raise ValueError(f'Non-unique route name: {route.name}')
temp_routes.add(route.name)