Alembic 不生成表格

问题描述 投票:0回答:1

第一次跑步

alembic revision --autogenerate -m "init"

它在我的数据库中生成表。

删除数据库后,删除脚本的版本,并尝试再次运行 alembic。他不再产生任何东西了。

我已经尝试再次安装alembic,但没有任何效果。我已经搜索了很多解决方案,但没有一个有效。

我是否缺少某些配置?

python sqlalchemy alembic
1个回答
6
投票

Alembic“知道”您已经运行了该迁移,然后它不会再次运行它(即使您删除表或重新安装 alembic)。

这里发生的过程包括 Alembic 首先检查数据库是否有一个名为

alembic_version
的表,如果没有,则创建它。它在此表中查找当前版本(如果有),然后计算从该版本到请求的版本的路径,在本例中为
head
,已知为
1975ea83b712
。然后,它调用每个文件中的
upgrade()
方法来获取目标修订版本。 https://alembic.sqlalchemy.org/en/latest/tutorial.html#running-our-first-migration

您需要告诉 alembic

downgrade
您的迁移才能再次运行它。 为此,只需致电:

alembic downgrade -1

然后您可以通过调用以下命令再次运行上次迁移:

alembic upgrade head

有更多信息这里

© www.soinside.com 2019 - 2024. All rights reserved.