You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行Alembic自动生成迁移命令时触发int类型转换错误

错误修复指南:Alembic执行自动迁移时触发ValueError

问题原因

你的alembic.ini中sqlalchemy.url的连接字符串格式完全不符合PostgreSQL规范,导致Alembic错误地将密码解析为端口号(要求整数类型),从而抛出ValueError: invalid literal for int() with base 10: 'postgres'。

PostgreSQL标准连接字符串格式为:
postgresql://<用户名>:<密码>@<主机地址>:<端口>/<数据库名称>

而你当前的配置把主机端口和用户密码的位置完全颠倒了。

修复方法

修改Project/alembic.ini中的sqlalchemy.url配置项为正确格式:

sqlalchemy.url = postgresql://%(DB_USER)s:%(DB_PASS)s@%(DB_HOST)s:%(DB_PORT)s/%(DB_NAME)s

可选优化

为了提前验证端口的有效性,避免后续潜在问题,可以修改Project/config.py中的DB_PORT获取逻辑,确保其为整数类型:

DB_PORT = int(os.environ.get("DB_PORT"))

此外,请确认PostgreSQL服务处于运行状态,且使用的数据库用户拥有目标数据库的访问权限。


内容的提问来源于stack exchange,提问作者TIUVAIEV SERHII

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 10:32:12