1、测试环境准备
之前买过一台阿里云的开发机(99元/年),系统为Ubuntu2004,先安装一下mysql,供后面学习和调试tortoise库:
apt install mysql-client-core-8.0
apt-get install mysql-server


配置mysql root密码:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '密码' PASSWORD EXPIRE NEVER; #更新一下用户的密码
mysql> UPDATE user SET host = '%' WHERE user = 'root'; #允许远程访问
创建数据库:
create database career;
mysql安装完毕。
2、Tortoise介绍
Tortoise ORM 是一个为异步Python应用设计的ORM(对象关系映射)库,它允许开发者以面向对象的方式与关系型数据库进行交互,同时充分利用异步编程的优势来提高应用的性能,并且支持多种数据库:PostgreSQL、MySQL和SQLite等。
核心概念:
模型(Models):Tortoise ORM 使用Python类来定义数据库中的表结构。每个类代表一个数据库表,类的属性对应表中的列。
字段(Fields):在模型中定义字段,这些字段映射到数据库表的列。Tortoise ORM 提供了多种字段类型,如整型、字符串型、日期型等。
关系(Relations):Tortoise ORM 支持定义模型之间的关系,如一对一、一对多、多对多等。
异步操作:所有数据库操作都是异步的,使用async和await关键字来执行。
Tortoise ORM 特性:
【异步特性】:Tortoise ORM 的所有数据库操作都是异步的,这意味着它们可以在单线程中同时处理多个数据库请求,而不会阻塞彼此。提高了应用的并发性和性能。
【模型定义】:在Tortoise ORM 中,开发者使用Python类来定义数据库表结构。这些类中的属性对应于数据库表中的列,这使得数据库操作更加直观和易于理解。
【查询构建】:Tortoise ORM 提供了强大的查询构建功能,允许开发者构建复杂的查询条件,以检索所需的数据。这包括使用链式调用、比较运算符、逻辑运算符等。
【关系映射】:Tortoise ORM 支持定义模型之间的关系,如一对一、一对多、多对多等。这使得开发者可以轻松地处理复杂的数据关系,并在代码中以直观的方式表示它们。
【迁移和同步】:Tortoise ORM 还提供了数据库迁移工具,用于管理数据库模式的变更。这使得在应用开发过程中,可以轻松地添加、修改或删除表结构,而无需手动编写SQL语句。
3、连接数据库
安装依赖包:
pip install tortoise-orm
pip install aiomysql
初始化数据库:
async def init():
await Tortoise.init(
db_url="mysql://yo

最低0.47元/天 解锁文章
1483

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



