Flask之擴展flask-migrate

flask-migrate一個用來做數據遷移的falsk擴展,一般都是結合flask-sqlalchemy使用,在上一篇文章中我也介紹了這個擴展,需要的小夥伴可以看一下,後續我會將flask-sqlalchemy更深層的寫出來。
【config.py】

SQLALCHEMY_DATABASE_URI='mysql://root:[email protected]:3306/test'    //數據庫連接

SQLALCHEMY_TRACK_MODIFICATIONS=False

【data_migrate.py】

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_script import Manager    #這是一個做腳本調式的庫,有時間我也會總結
from flask_migrate import Migrate,MigrateCommand

app = Flask(__name__)

app.config.from_envvar('config.py')
db = SQLAlchemy(app) 

migrate = Migrate(app, db)

manager = Manager(app)
manager.add_command('db', MigrateCommand)

class User(db.Model):    #創建一個模型類,用於做數據遷移
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(32))
    
if __name__ == '__main__':
    manager.run()

【控制檯測試】

>>>python data_migrate.py db init    //創建遷移存儲庫
>>>python data_migrate.py db migrate -m '版本名後綴'   //生成初始遷移
>>>python data_migrate.py db upgrade    //將遷移應用於數據庫

//若有修改,可重複執行2/3這兩條命令
>>>python 文件 db history    //顯示整個歷史版本記錄
【其他命令】
python data_migrate.py db --help    //幫助,查找所有命令
python data_migrate.py db current    //顯示當前版本
python data_migrate.py db upgrade 版本號    //升級版本,不指定版本爲最新版本
python data_migrate.py db downgrade 版本號    //降級數據庫,不指定版本則是最老版本
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章