2017-04-18 24 views
0

我有更改我的模型类与ID从autoincrement = False autoincrement = True但Flask Migrate包不会检测到更改以应用于数据库?我怎样才能解决这个问题?Flask migrate不检测列自动增量变化?

class User(db.Model): 
    __tablename__ = 'users' 
    id = db.Column(db.Integer, unique=True, primary_key=True, autoincrement=True) 

迁移命令日志:

INFO [alembic.runtime.migration] Context impl MySQLImpl. 
INFO [alembic.runtime.migration] Will assume non-transactional DDL. 
INFO [alembic.env] No changes in schema detected. 
+0

也许,您将不得不自己制作,因为迁移确实会记录对模型所做的全部更改。 –

回答

1

自动生成的迁移脚本并不意味着100%的正确,每次是,他们注定只是作为首发。您应该查看它,并添加或更正任何不准确的内容。所以我会说只是添加自动增量的脚本,应该是它。

+0

谢谢。但是,当它没有检测到任何变化时,它甚至不会创建任何迁移文件供我们编辑。然后,我们必须手动创建迁移文件,这很烦人:( –

+1

)您是否尝试过使用'revision'命令?这会生成一个空的迁移脚本,您可以手动进行编辑 – Miguel

+0

我没有,非常感谢您让我知道。最佳(y) –