Tortoise-ORM集成

发布时间:2026/7/20 18:13:09
Tortoise-ORM集成 Tortoise-ORM里面都是异步函数跟之前的django有一点类似但是并不完全相同支持外键一对一多对多等关系类型。装饰器.方法(“路径”)async def 函数名():await 表名.方法(参数)新建一个appPython软件包在app里新建一个Python文件然后把这个项目的配置写在里面再app里面新建一个models和routersPython软甲包在models软件包里面新建python文件用于创建你所需要的模型首个模型用aerich init -t app.config.TORTOISE_ORM初始化迁移然后用aerich inti-db生成数据库中的表之后创建新表时就可以用aerich migrate方法迁移用aerich upgeade生成数据库表生成表之后开始写对表的增删改查操作在routers软件包中新建api或任意名字的python文件用于对表进行操作在文件中通过APIRouter方法生成一个路径然后通关get方法对表进行查询但是要在函数前加上aysnc并且执行sql操作时得在前面加上await。执行添加和修改操作时得再app中新建一个schemas软件包在里面新建python文件然后写你要添加的数据和修改的数据添加和修改不能用同一个方法删除操作是直接传你要删除的那条数据的id通过delete方法直接删除即可。然后还学习了一对一表外键字段用fileds.OneToOneField(“models.要关联的表名”,related_name:“反向查询的名字”),通过get方法查询两表时用prefetch_related(“自己定义的反向查询的名字”),新建一个空列表对这个得到的列表进行循环然后将里面的字段赋值到一个新字典里外键字段设置为空如果这个外键字段是空的话就返回一个none如果不是空就从新在写一个字典通过profile这个字段进行反向查询然后添加到空列表中返回