Flask中使用Flask-Migrate扩展迁移数据库
安装Flask-Migrate插件
|
1
|
(venv) $ pip install flask-migrate |
注意到虚拟环境中(因为Flask环境就安装在虚拟环境中)
安装flask-script使python支持命令行操作
|
1
|
pip install flask-script |
创建manage.py文件
#!/usr/bin/env python from flask_demo import db from manage import app from flask_script import Manager from flask_migrate import Migrate,MigrateCommand
#让python支持命令行操作 manager=Manager(app)
#使用migrate绑定app和db
Migrate(app,db)
#添加迁移脚本的命令到manager manager.add_command('db', MigrateCommand) if __name__=='__main__': # app.run() manager.run() #python manage.py runserver -h 127.0.0.1 -p 8001
初始化
|
1
|
(venv) $ python manage.py db init |
创建迁移脚本
|
1
|
(venv) $ python manage.py db migrate |
更新数据库
|
1
|
(venv) $ python manage.py db upgrade |
第一次迁移实际上相当于调用db.create_all(),但在后续迁移中,upgrade命令对表实施更新操作但不影响表中的内容。
浙公网安备 33010602011771号