为什么Flask Migrate不会创建空的迁移文件?

时间:2016-09-28 10:20:33

标签: python flask-sqlalchemy flask-migrate

我正在使用Flask,Flask-SqlAlchemy和Flask-Migrate来管理我的模型。我只是意识到在我最新的数据库状态下,当我创建一个新的迁移文件python manage.py db migrate -m'test migration时,它不会创建一个空的迁移文件。相反,它尝试创建和删除几个唯一的键和外键约束。

为什么它的行为如此?

1 个答案:

答案 0 :(得分:2)

如果您没有从当前迁移中对模型进行任何更改,但是您生成了非空迁移文件,那么它会因某种原因建议您的模型与数据库不同步,并且这些内容与迁移只是不匹配的事情。

如果你说迁移包含删除某些约束并添加其他约束的代码,那么我会认为约束名称可能已更改,或者您可能将SQLAlchemy版本升级为生成具有不同名称的约束的较新版本