1.配置文件
TORTOISE_ORM = { "connections": { "default": { # 老业务库 "engine": "tortoise.backends.mysql", "credentials": { ... } }, "newbiz": { # 新业务库 "engine": "tortoise.backends.mysql", "credentials": { ... } }, }, "apps": { "models": { # 老 app "models": ["app.models.users", "aerich.models"], "default_connection": "default", }, "newbiz": { # 新 app "models": ["app.newbiz.models", "aerich.models"], # 关键点:也要带 aerich.models "default_connection": "newbiz", }, }, }
2.初始化命令
# 给第二个库(newbiz)再建一套迁移 aerich init -t config.settings.TORTOISE_ORM -app newbiz aerich init-db -app newbiz # 对命令的更新操作 aerich migrate -app newbiz --name init_newbiz aerich upgrade -app newbiz aerich downgrade -app newbiz -v 1 # 回滚到版本 1
3.分开导入使用
from app.models.users import Users # 属于 models app → default 连接 from app.newbiz.stat import Stat # 属于 newbiz app → analytics 连接 user = await Users.get(id=1) # 自动用 default 库 stat = await Stat.create(pv=100) # 自动用 analytics 库