在 Python 中处理 JWT(JSON Web Token) 时,PyJWT 和 python-jose[cryptography] 是两个主流库,它们功能相似但定位和生态不同。下面我将从 功能、安全性、使用场景、FastAPI 兼容性 等角度为你详...
阅读全文...
Tortoise-ORM 数据库迁移工具Aerich
Aerich 是专为 Tortoise-ORM 设计的数据库迁移工具,灵感来源于 Django 的 South / migrations,目标是提供类似 Alembic(SQLAlchemy)的功能,但更贴合 Tortoise 的异步生态。🧰 一、Aer...
阅读全文...
阅读全文...
Tortoise-ORM 中关联关系(一对一、一对多、多对多)
在 Tortoise-ORM 中,关联关系(Relationships)是构建复杂数据模型的核心功能。它支持三种经典关系:一对一(One-to-One)一对多(One-to-Many)多对多(Many-to-Many)下面我将通过 清晰的代码示例 + 查...
阅读全文...
阅读全文...
Tortoise-ORM 的字段类型
Tortoise-ORM 提供了丰富且直观的字段类型(Field Types),用于定义数据库模型(Model)。这些字段类型不仅映射到数据库列,还支持索引、默认值、唯一约束、外键关系等。📌 一、核心字段类型速查表字段类型用途对应数据库类型典型参数Int...
阅读全文...
阅读全文...
SQLAIchemy 和 tortoise-orm 对比
SQLAlchemy 和 Tortoise-ORM 都是 Python 中流行的 ORM(对象关系映射)工具,但它们的设计哲学、适用场景和生态支持有显著差异。下面我将从 核心特性、语法风格、异步支持、生态兼容性、适用场景 等多个维度进行横向对比,并给出明...
阅读全文...
阅读全文...
FastAPI 请求对象(Request)和 响应类型(Response)
在 FastAPI 中,请求对象(Request) 和 响应类型(Response) 的设计非常灵活且现代化。✅ 一、请求对象(Request)通常你不需要显式使用 Request 对象,因为 FastAPI 已自动解析路径、查询、请求体。但以下场景需要...
阅读全文...
阅读全文...
FastAPI 文件上传(多案例)
前提需要安装python-multipart,是处理表单数据(如文件上传)所必需的。单文件上传@app.post("/upload/")
async def upload_file(file: UploadFile = File(.....
阅读全文...
阅读全文...
FastAPI 参数验证学习
请求参数验证(Validation) —— 这是 FastAPI 最强大的特性之一。FastAPI 基于 Pydantic,提供了多种方式对输入数据进行校验。下面我用 同一个业务案例,分别用 4 种典型验证方式 实现,并对比它们的适用场景、优缺点和特点。...
阅读全文...
阅读全文...
FastAPI 请求体学习
FastAPI 的核心功能之一:请求体(Request Body)。请求体主要用于 POST、PUT、PATCH 等 HTTP 方法中,用来接收客户端发送的 JSON 数据(比如创建用户、提交表单、上传配置等)。🧩 一、什么是请求体(Request Bo...
阅读全文...
阅读全文...