flask-sqlalchemy使用migrate操作数据模型

mac2026-08-09  5

在开发过程中,如果我们对已添加的表新增加了字段,如果我们不删除表,新的字段就不会出现,如果以这种方式更新数据库结构,原先的数据就没有了。 所以我们可以借助flask-migrate这个工具像使用django的migrate一样对flask的模型进行更新迁移。此外,我们还要借助flask-script使用命令行去完成数据库的迁移。 首先我们要pip安装这2个库

pip install flask-migrate pip install flask-script

新建一个manage.py,如下:

from flask_script import Manager from flask_migrate import Migrate, MigrateCommand from app.models.base import db from app import create_app app = create_app() manager = Manager(app) migrate = Migrate(app, db) manager.add_command('db', MigrateCommand) if __name__ == '__main__': manager.run()

然后我们就可以使用如下命令进行模型的更新,如果我们使用CMD时提示找不到模块,我们可以使用SET PYTHONPATH=.解决环境变量的问题

python manage.py db init python manage.py db migrate python manage.py db upgrade

至此,我们就可以像使用django一样的来管理flask的数据库模型了。

最新回复(0)