Flask学习系列——修改数据库字段

时间:2024-03-23 19:07:14

1.做项目时,经常需要修改数据库字段,一般修改了model字段后,需要删除数据库重新更新,调用db.creat_all()来重新建表。但是,flask引入了flask-script和flask-migrate解决。(自行安装 pip install)
2.新建一个helper.py文件夹。

from app.models.base import db
from mesage_Tab import app

manager = Manager(app)
#要使用flask-migrat 先绑定db和app
migrate = Migrate(app,db)
# 将MigrateCommand添加到manager中,"db"是自定义命令
manager.add_command("db",MigrateCommand)

if __name__ == "__main__":
    manager.run()

3.打开终端,进入项目根目录,执行下面命令
python helper.py db init

初始化成功后,你的项目目录多了一个migrattions文件夹
  Flask学习系列——修改数据库字段
4.修改了model表中字段后,执行下面命令
python helper.py db migrate
可以看见修改的命令
Flask学习系列——修改数据库字段
执行完成后,migrations文件夹下 versions里面会多出文本文件,检查表格及字段。
Flask学习系列——修改数据库字段
5.修改数据库
python helper.py db upgrade

upgrade会自动读取刚才生成的文件,将数据更新到数据库中。
  Flask学习系列——修改数据库字段
执行完成后,数据库表中就添加了我们需要的字段。

Flask学习系列——修改数据库字段

【注1python helper.py db migrate 将模型生成迁移文件,只要模型修改了,就执行一次这个命令】

【注2:python helper.py db upgrade 将迁移文件真正映射到数据库中,每次运行了migrate命令,就要记得运行这个命令,不然数据库中的信息是不会被修改的。】