Flask-Migrate脚本未将更改应用于Postgres数据库

我在flask项目中对模型进行了一些最近的更改。我试图将这些更改应用于Postgres DB,但是该脚本似乎没有任何效果。当我运行升级时,它会显示

INFO  [alembic.runtime.migration] Context impl SQLiteImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.runtime.migration] Running upgrade  -> ba60ca569e9f,empty message

,但是数据库中没有任何变化。我删除了数据库并重新创建它,但仍然没有任何反应。怎么了?

yjr1119 回答:Flask-Migrate脚本未将更改应用于Postgres数据库

Context impl SQLiteImpl.是一个强烈的暗示。我的数据库URI由SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URI') or 'sqlite:///'确定。当我在由Docker组成的环境中运行项目时,它起作用了,因为DATABASE_URI已在Dockerfile中正确设置。当我在本地环境上运行它时,它不起作用。我可以在服务器容器上运行它,它应该可以工作。

我通过将DATABASE_URI正确设置为export DATABASE_URI=postgres://{USERNAME}:{PASSWORD}@127.0.0.1:5432/debateit来解决此问题。这使我的本地环境连接到Postgres DB,而不是本地SQLite。

本文链接:https://www.f2er.com/3156592.html

大家都在问