· 约 2 分钟

21-FastAPI进阶-ORM操作数据-条件查询-比较查询

  • FastAPI
  • Python

学习目标

核心概念

代码示例

from sqlalchemy import and_, select


@app.get("/users/filter")
def filter_users(db: DbSession):
    stmt = select(User).where(
        and_(
            User.age >= 18,
            User.age <= 30,
            User.department == "技术部",
        )
    )
    users = db.scalars(stmt).all()
    return [UserOut.model_validate(user) for user in users]


@app.get("/users/by-ids")
def get_users_by_ids(db: DbSession):
    stmt = select(User).where(User.id.in_([1, 2, 3]))
    users = db.scalars(stmt).all()
    return [UserOut.model_validate(user) for user in users]

案例理解

易错点

我的补充