1.安装 flask_migrate 和 flask_script
pip 一下就好了
2.新建 model.py 文件
我们通过app对象呵SQLAlchemy 的实例初始化了Migrate对象,然后让迁移命令可以通过吗model.py db 来调用
# *_*coding:utf-8 *_*
from flask_migrate import MigrateCommand, Migrate
from app import db,app
from flask_script import Manager
manager = Manager(app)
migrate = Migrate(app, db)
manager.add_command('db', MigrateCommand)
class User(db.Model):
__tablename__ = 'user'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(200))
c = db.Column(db.String(200))
if __name__ == '__main__':
manager.run()
3.
class那边是自己定义的,修改的话自行修改就好
4.命令行下执行
python model.py db init (相当于创建)
这会在项目目录中创建一个叫做migrations的文件夹,所有的记录文件会被保存在里面
python model.py db migrate
提交信息
python model.py db upgrade
把迁移记录应用到数据库上,并且改变数据库的结构
假如要返回以前的版本,则可以根据history命令找到版本号,然后传给 downgrade命令:
python model.py db history
python model.py db downgrade xxxxxxxx