FastAPI中如何结合格式字符串使用路径参数?
解决方案
方法一:转义f-string中的大括号
在f-string里用双大括号{{}}来表示路径参数的占位符,Python会将其解析为单个大括号,既保留f-string的简洁性,又能正确生成FastAPI的路径规则:
prefix = 'api/v1' @router.get(f'{prefix}/{{item}}') def get_item(item: str): return ...
方法二:直接字符串拼接
如果觉得转义大括号不够直观,也可以用普通字符串拼接,逻辑简单直接:
prefix = 'api/v1' @router.get(prefix + '/{item}') def get_item(item: str): return ...
方法三:利用APIRouter的prefix参数(推荐)
FastAPI的APIRouter本身支持初始化时设置prefix参数,这是最符合框架设计的方式,避免手动拼接路径,代码更整洁:
router = APIRouter(prefix='/api/v1') @router.get('/{item}') def get_item(item: str): return ...
内容的提问来源于stack exchange,提问作者sharpnife
相关产品推荐
相关产品推荐

