连接关系型数据库:FastAPI 与 ORM 的实践
1. Pony ORM 简介
Pony ORM 具有独特的性能优势,它使用身份映射(Identity Map)来提升读写操作的速度。身份映射包含了从每个查询事务中检索到的所有记录对象,ORM 通过应用身份映射设计模式实现缓存机制。不过,在复杂和大型应用中,需要进行内存管理和监控,以避免内存泄漏问题。
所有的仓库类都可以在 /repository/pony/members.py 脚本文件中找到。由于 db_session 已经在内部进行管理,因此 APIRouter 脚本在运行仓库事务时,Pony 不需要额外的配置。可以直接在每个 API 中访问和实例化仓库类,以执行 CRUD 事务。
如果表还不存在,Pony 可以通过其实体类生成这些表。当 db 的 generate_mapping() 方法的 create_tables 参数设置为 True 时,就会启用这个 DDL 事务。
2. Peewee ORM 入门
Peewee 是一种语法简洁的 ORM,在 ORM 特性和 API 方面,它是最简单和最小的框架。它易于理解和使用,虽然功能不够全面,但具有直观的 ORM 语法,尤其擅长构建和执行查询事务。
Peewee 并非为异步平台设计,但可以通过支持的异步相关库与异步框架(如 FastAPI)配合使用。要让 Peewee 与 FastAPI 协同工作,至少需要
超级会员免费看
订阅专栏 解锁全文
877

被折叠的 条评论
为什么被折叠?



