测试开发Flask入门之数据库数据库迁移

点击上方蓝字设为星标

每天傍晚伴你一起成长!

在文章底部你的每一次随手

→分享、点赞、在看都很重要,感谢!!!

数据库知识点

Flask-SQLALchemy安装

连接数据库

使用数据库

数据库迁移

邮件扩展

数据库迁移:

创建迁移仓库

创建迁移脚本

更新数据库

回退数据库

在实际的系统开发中,经常碰到需要更新数据库中的表或修改字段等操作。

如果通过手工编写SQL脚本进行处理,修改起来就会非常麻烦。

那有没有简单一点的办法呢?

有!Flask-Migrate数据库迁移框架就是专门解决这个问题的。

使用Flask-Migrate数据库迁移框架可以保证数据库结构在发生变化时,改变数据库结构不至于丢失数据库的数据。

数据库迁移

在开发过程中,需要修改数据库模型,而且还要在修改之后更新数据库。最直接的方式就是删除旧表,但这样会丢失数据。

更好的解决办法是使用数据库迁移框架,它可以追踪数据库模式的变化,然后把变动应用到数据库中。

在Flask中可以使用Flask-Migrate扩展,来实现数据迁移。并且集成到Flask-Script中,所有操作通过命令就能完成。

为了导出数据库迁移命令,Flask-Migrate提供了一个MigrateCommand类,可以附加到flask-script的manager对象上。

首先要在虚拟环境中安装Flask-Migrate。

pipinstallflask-migrate

文件:database.py

#coding=utf-8fromflaskimportFlaskfromflask_sqlalchemyimportSQLAlchemyfromflask_migrateimportMigrate,MigrateCommandfromflask_scriptimportShell,Managerapp=Flask(__name__)manager=Manager(app)app.config[SQLALCHEMY_DATABASE_URI]=mysql://root:mysql

.0.0.1:/Flask_testapp.config[SQLALCHEMY_COMMIT_ON_TEARDOWN]=Trueapp.config[SQLALCHEMY_TRACK_MODIFICATIONS]=Truedb=SQLAlchemy(app)#第一个参数是Flask的实例,第二个参数是Sqlalchemy数据库实例migrate=Migrate(app,db)#manager是Flask-Script的实例,这条语句在flask-Script中添加一个db命令manager.add_



转载请注明地址:http://www.sanbaicaoasb.com/scry/8356.html
  • 上一篇文章:
  • 下一篇文章:
  • 热点文章

    • 没有热点文章

    推荐文章

    • 没有推荐文章