2017-04-18 48 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) –