Flask-Script
首先現在安裝Flask-Script擴展:
pip install Flask-Script
在程序中導入
from flask_script import Manager
用Manager管理app對象
manageer = Manager(app)
用manager對象運行
manager.run()
這樣我們就可以想Django一樣啓動Flask的服務器:
python script_flask.py runserver
如果想運行到其他IP和Port上:
python demo.py runserver -h 0.0.0.0 -p 5000 -d # -d表示debug
還可以進入shell環境:
python demo.py shell # 進入交互式python環境,並且自動導入demo.py中的內容。
爲了導出數據庫遷移命令,Flask-Migrate提供了一個MigrateCommand類,可以附加到flask-script的manager對象上。
先安裝下面兩個擴展:
pip install Flask-Script
pip install flask-migrate
添加字段
首先我們通過命令創建出migrations文件夾,後面所有的遷移文件都會放在這個文件夾裏面
python flask_migrate_db.py db init
生成遷移文件 -m:給遷移文件加上註釋
python flask_migrate_db.py db migrate -m ''first create'
添加新字段 在遷移一下
age = db.Column(db.Integer) # 年齡
遷移
python flask_migrate_db.py db migrate -m 'add age'
upgrade命令同步到數據庫中:
python flask_migrate_db.py db upgrate
回退
爲避免出錯,建議先使用python flask_migrate_db.py db history命令查看歷史版本的具體版本號,然後複製具體版本號執行回退。
base指的是原始版本
python flask_migrate_db.py db downgrade base
指定版本號
python flask_migrate_db.py db downgrade 4cee71e47df3