使用Flask-Migrate迁移数据库

1、安装

$pipenv install flask-migrate
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_migrate import Migrate
app = Flask(__name__)
...
db = SQLAlhemy(app)
migrate = Migrate(app.db) #在db对象创建后调用

2、创建迁移环境

$ flask db init

迁移环境只需要创建一次。这会在你的项目根目录下创建一个migrations文件夹,其中包含了自动生成的配置文件和迁移版本文件夹

3、生成迁移脚本

$ flask db migrate -m "add note timestamp"

-m选项用来添加迁移备注信息,此命令会在migrations/versions/下创建一个迁移.py文件,包含两个函数:upgrade()用来将改动应用到数据库,downgrade()用来撤销改动。

因为每一次迁移都会生成新的迁移脚本,同时生成修订版本(revision)ID,所以数据库可以恢复到历史中的任一点

4、更新数据库

生成迁移脚本后,使用upgrade子命令即可更新数据库

$ flask db upgrade

如果没有数据库和表,则会自动创建;如果已经创建,则会在不损坏数据的前提下执行更新。

提示:如果 想回滚迁移,可以使用 downgrade命令(隆级),它会撤销最后一次迁移在数据库中的改动,这在开发时非常有用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值