每次模型遷移基本上都會因爲一些小問題而使得結果拋出KeyError: 'migrate’這個問題:
產生上述問題原因有以下
兩種
原因:
- 初始化Migrate對象時沒有加
db
migrate = Migrate(app)
解決方法如下:
migrate.init_app(app=app,db=db)
注意:
並且使用關鍵詞參數對參數進行賦值,防止賦值錯誤
manager.py
中沒有使用create_app
這個函數
app = Flask(app = app)
解決方法如下:
首先在__init__.py
中創建好create_app()
這個函數:
def create_app():
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = \
'mysql+pymysql://JiangCheng:[email protected]:3306/flaskday06'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db.init_app(app=app)
migrate = Migrate()
migrate.init_app(app=app,db=db)
return app
然後再在manager.py
中進行調用
app = create_app()