首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flask-Migrate: alembic.util.CommandError:无此版本

Flask-Migrate: alembic.util.CommandError:无此版本
EN

Stack Overflow用户
提问于 2016-03-05 11:42:14
回答 1查看 3.6K关注 0票数 1

我已经安装了Flask-Migration并初始化了迁移,但是当我运行python3 manage.py db migrate时,我会收到以下错误。

代码语言:javascript
复制
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/alembic/script.py", line 104, in get_revision
raise util.CommandError("No such revision '%s'" % id_)
alembic.util.CommandError: No such revision '38340accc10'

正如Cannot complete Flask-Migration中建议的那样,一个可能的原因是我做了一个升级,生成了上面的修订版'38340accc10',但随后删除了整个迁移/目录,并删除了所有升级脚本。

如何删除数据库中的Alembic版本?我尝试使用db.drop_all()db.create_all()重新创建数据库,但仍然出现相同的错误。

EN

回答 1

Stack Overflow用户

发布于 2016-03-06 00:51:17

如果你能生成一个全新的数据库,那就是解决这个问题的最简单的方法。

首先,您需要删除数据库中的所有表,或者销毁数据库并创建一个全新的表。运行db.drop_all()是不够的,因为这只会删除与模型相关联的表,而不会删除Alembic表。

一旦您有了一个完全空的数据库,您应该能够运行./manage.py db upgrade将其带回您的最新迁移。

如果您收到错误,则意味着您的迁移历史记录已损坏,可能是因为您删除了正在使用的迁移脚本。在这种情况下,您可以清除数据库,清除迁移目录,然后重新开始使用./manage.py db init,然后使用./manage.py db migrate创建与模型的当前状态相匹配的初始迁移。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35809706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档