FastAPI教程-集成SQLAlchemy:在路由中执行查询

实现

在路由函数中,注入依赖,依赖传入 get_db,调用增删改查函数时,传入 db

修改 main.py 内容如下:

@app.get('/student/{id}')
async def get_student(id: int, db = Depends(get_db)):
    res = await query_by_id(db,id)
    if res:
        return res
    else:
        raise HTTPException(status_code=404, detail="没有此学生")

完整代码

from fastapi import FastAPI, Depends, HTTPException

from core.database import get_db
from crud.user import query_by_id

app = FastAPI()


@app.get('/student/{id}')
async def get_student(id: int, db = Depends(get_db)):
    res = await query_by_id(db,id)
    if res:
        return res
    else:
        raise HTTPException(status_code=404, detail="没有此学生")