这个模板仓库在这里:https://github.com/JiayuXu0/FastAPI-Template。写它的时候,我最纠结的不是目录怎么摆,而是请求生命周期怎么收口。早期做服务时我干过两件蠢事:一是路由里直接拿全局 Session,commit 到处都是;二是异常时忘回滚,偶尔出现“半落地”的脏数据。服务没挂,但数据开始变得不可信,这比挂掉更可怕。
后来我把依赖注入当成“生命周期管理...
起因事情是这样的。
我这个后端模板用了一套自定义的响应类,Success、Fail、SuccessExtra,都继承自 FastAPI 的 JSONResponse。当时的想法很简单——统一响应格式,前端拿到的数据结构永远是 {code, msg, data} 这个样子,分页接口再多带几个字段。
1234class Success(JSONResponse): def __init__...
这个模板仓库在这里:https://github.com/JiayuXu0/FastAPI-Template。它的定位不是“功能大而全”,而是把工程里最容易反复踩坑的部分先固化下来,让新服务可以更快进入业务迭代。
设计目标
最小完整闭环:启动即具备可运行的 API、基础日志、配置入口和错误处理,不让人从零拼装。
可替换组件:数据库、缓存、消息队列等不做强绑定,给出清晰接入位。
工程化友好:目...