title: FastAPI与Tortoise-ORM模型配置及aerich迁移工具
date: 2025/04/30 00:11:45
updated: 2025/04/30 00:11:45
author: cmdragon
excerpt:
FastAPI中使用Tortoise-ORM时,模型类通过继承tortoise.models.Model
并定义class Meta
来映射数据库字段。元数据配置包括表名、schema、表注释和联合唯一约束等。初始化数据库连接推荐使用lifespan
事件处理,配置参数包括数据库URL、模型模块路径等。aerich迁移工具用于管理数据库迁移,通过init-db
、migrate
和upgrade
等命令实现迁移文件的生成和应用。常见问题包括模型注册失败和迁移文件冲突,需检查模型路径和清除冲突文件。
categories:
- 后端开发
- FastAPI
tags:
- FastAPI
- Tortoise-ORM
- 数据库迁移
- aerich工具
- 模型元数据
- 数据库初始化
- 常见问题解决方案


扫描二维码)
关注或者微信搜一搜:编程智域 前端至全栈交流与成长
探索数千个预构建的 AI 应用,开启你的下一个伟大创意:https://tools.cmdragon.cn/
第一章:模型类元数据配置基础
1.1 模型定义与元数据
在FastAPI中使用Tortoise-ORM时,模型类通过Python类属性与数据库字段建立映射关系。每个模型类必须继承自tortoise.models.Model
,并通过class Meta
定义元数据:
from tortoise.models import Model
from tortoise import fields
class User(Model):
id = fields.IntField(pk=True)
username = fields.CharField(max_length=50, unique=True)
created_at = fields.DatetimeField(auto_now_add=True)
class Meta:
table =