flask 数据库迁移 flask-migrate 的使用

        我们在flask项目中,会使用flask_sqlalchemy来创建数据库(  db.create_all(app) ),但是这个方法只适用于本来没有这个数据库重新创建的数据库才会被执行,如果我们修改数据库的字段,或者添加一个字段,这种方法是没有用的,这时我们就需要用到flask的数据库迁移,flask-migrate

使用flask-migrate

1,flask_migrate  是依赖于  flask_script这个插件的所以我们首先在面自已的 环境中安装flask_script  和 flask_migrate

      pipenv install flask_script

      pipenv install flask_migrate

      (pip命令 和 pipenv命令区别就自行百度吧)

2,看下图

flask 数据库迁移 flask-migrate 的使用_第1张图片

 

flask 数据库迁移 flask-migrate 的使用_第2张图片

 

首先我们使用 python fisher.py db init来初使化一个 migrate 

flask 数据库迁移 flask-migrate 的使用_第3张图片

db init 命令初始化完成之后,就使用 db  migrate命令来自动生成迁移文件,文件生成后,就存放在 项目中的 migrations文件夹中

python fisher.py db migrate 

也可以像git一样添加参数  

python fisher.py db migrate -m '我对数据库字段进行了修改'

----------------------------------------------------------------------------------------------------------------------------------------------------

以上只是进行了迁移文件的生成,如果要把改变执行到数据库中,就可使用 db upgrade命令

python fisher.py db upgrade   这样就把改变提交到了数据库中

-------------------------------------------------------------------------------------------------------------------------------------------------------

说了它像git   那么它也可以进行版本的回退

首先使用   db history命令查看历史的版本, 再使用 db downgrade 来进行回退,这些就不细数了

 

你可能感兴趣的:(flask 数据库迁移 flask-migrate 的使用)