Tortoise配置PostgreSQL报Unknown DB scheme错误如何解决
Tortoise ORM PostgreSQL连接报错解决方案
核心报错原因
Unknown DB scheme: postgresql 报错的根因是Tortoise ORM对PostgreSQL连接URL的协议头有固定命名要求,不支持你使用的postgresql://前缀,仅支持postgres://前缀,该命名规则与SQLAlchemy等其他ORM的规则不同,很容易混淆。
具体解决步骤
- 第一步:修改连接URL配置
将register_tortoise配置中db_url参数的协议头替换为postgres://,修改后的完整配置如下:
register_tortoise( app, db_url="postgres://postgres:password@localhost:5432/testdb", modules={'models': ['db.models.users']}, generate_schemas=True, add_exception_handlers=True )
- 第二步:确认异步驱动已安装
Tortoise ORM连接PostgreSQL依赖异步驱动asyncpg,如果未安装执行以下命令安装即可:pip install asyncpg - 第三步:可选排查项
如果修改后仍启动失败,可依次核对以下配置:- 本地PostgreSQL服务是否正常运行,5432端口是否可正常访问
- 配置中的数据库账号、密码、数据库名是否正确,
testdb需提前在PostgreSQL中创建完成
内容的提问来源于stack exchange,提问作者user3368526
相关产品推荐
相关产品推荐

