【Flask】Flask-Migrate基本使用
# flask_migrate笔记:
在实际的开发环境中,经常会发生数据库修改的行为。一般我们修改数据库不会直接手动的去修改,而是去修改ORM对应的模型,然后再把模型映射到数据库中。这时候如果有一个工具能专门做这种事情,就显得非常有用了,而flask-migrate就是做这个事情的。flask-migrate是基于Alembic进行的一个封装,并集成到Flask中,而所有的迁移操作其实都是Alembic做的,他能跟踪模型的变化,并将变化映射到数据库中。
##########
需要将映射到数据库中的模型导入到manage.py中, 否则.migrate过程中无法检测到数据变更.
#######
### 安装:
pip install flask-migrate
### 在manage.py中的代码:
1 # coding:utf-8 2 # Author: liangjun.chen 3 4 from flask_script import Manager 5 from flask_migrate_demo import app 6 from flask_migrate import MigrateCommand, Migrate 7 from exts import db 8 9 10 manager = Manager(app) 11 Migrate(app, db) 12 manager.add_command("db", MigrateCommand) 13 14 15 if __name__ == "__main__": 16 manager.run()
### flask_migrate常用命令:
1. 初始化一个环境:python manage.py db init
2. 自动检测模型,生成迁移脚本:python manage.py db migrate
3. 将迁移脚本映射到数据库中:python manage.py db upgrade
4. 更多命令:python manage.py db --help