经常碰到需要更新数据库中的表或修改字段等操作,通过手工编写alter SQL脚本进行处理,经常会发现遗漏,而且修改起来不太方便。同时,由于在Python中采用db.create_all修改字段时,不会自动将更改写入数据库的表中,只有数据表不存在时,Flask_SQLAlchemy才会创建数据库,所以必须删除数据库相关表,然后重新运行db.create_all才会重新生成表,这与实际情况不符合。现在可以使用Flask_Migrate迁移框架来解决这个问题。使用Flask-Migrate数据库迁移框架,可以保证数据库结构在发生变化时,改变数据库结构不至于丢失数据库的数据。
完整目录结构如下: