Flask框架(flask-sqlalchemy操作,Migrate作用,Flask迁移数据库,Flaks同步表数据)
2022/5/11 19:14:05
本文主要是介绍Flask框架(flask-sqlalchemy操作,Migrate作用,Flask迁移数据库,Flaks同步表数据),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
目录- 一:flask-sqlalchemy操作
- 1.引入:
- 2.Flask-Migrate扩展
- 3.flask-sqlalchemy与slask_migrate作用
- 4.flask-migrate初始化与迁移数据库介绍
- 5.flask-sqlalchemy 操作迁移数据库
- 6.导出项目依赖
- 二:Flask-Migrate的作用
- 负责表结构同步
- (一) 安装插件
- (二)使用
- 1、实例化
- 2、添加命令
- (三) 同步表结构
- 1、init 初始化,只需执行一次
- 2、migrate--将模型的变更生成迁移文件
- 3、upgrade
一:flask-sqlalchemy操作
flask-sqlalchemy : 让flask更好的集成sqlalchemy flask_migrate :类似于django的makemigrations和migrate,因为sqlalchemy不支持表修改(删除,增加字段)
1.引入:
1.在开发过程中,需要修改数据库模型,而且还要在修改之后更新数据库。最直接的方式就是删除旧表,但这样会丢失数据。 2.更好的解决办法是使用数据库迁移框架,它可以追踪数据库模式的变化,然后把变动应用到数据库中。
2.Flask-Migrate扩展
1.在Flask中可以使用Flask-Migrate扩展,来实现数据迁移。并且集成到Flask-Script中,所有操作通过命令就能完成。 2.为了导出数据库迁移命令,Flask-Migrate提供了一个MigrateCommand类,可以附加到flask-script的manager对象上。
3.flask-sqlalchemy与slask_migrate作用
flask-sqlalchemy : 让flask更好的集成sqlalchemy flask_migrate :类似于django的makemigrations和migrate,因为sqlalchemy不支持表修改(删除,增加字段)
4.flask-migrate初始化与迁移数据库介绍
python3 manage.py db init 初始化:项目开始只执行一次(生成migrations文件夹) python3 manage.py db migrate 等同于 makemigartions(models模型层,增删改记录) python3 manage.py db upgrade 等同于migrate(同步记录到models模型层内)
5.flask-sqlalchemy 操作迁移数据库
# 1.先导入,实例化得到一个对象 from flask_sqlalchemy import SQLAlchemy # 2.生成db对象 db = SQLAlchemy() # 3.所有表模型都继承 db.Model # 4.在视图函数中查询那个session对象 db.session
6.导出项目依赖
# 安装:pip3 install pipreqs #导出:pipreqs . --encoding=utf8
二:Flask-Migrate的作用
负责表结构同步
db.create_all 方法,同步表结构,create_all方法只能够对新增模型进行同步,如果模型发生修改,不能够同步 flask-migrate可以对发生变更的模型进行同步
(一) 安装插件
pip install flask-migrate
(二)使用
1、实例化
实例化步骤
2、添加命令
添加migrate命令
(三) 同步表结构
1、init 初始化,只需执行一次
初始号操作
2、migrate--将模型的变更生成迁移文件
生成迁移文件
3、upgrade
执行生成的文件,同步到表结构中
python main.py db upgrade
这篇关于Flask框架(flask-sqlalchemy操作,Migrate作用,Flask迁移数据库,Flaks同步表数据)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-06Package Easy(基于 NSIS 的打包exe安装包工具)使用方法-icode9专业技术文章分享
- 2024-06-06基于 casdoor 的 ELK 开源登录认证解决方案: elk-auth-casdoor-icode9专业技术文章分享
- 2024-05-29Elasticsearch慢查询日志配置
- 2024-05-29揭秘华为如此多成功项目的产品关键——Charter模板
- 2024-05-29海外IDC业务拓展的7大挑战
- 2024-05-29InLine Chat功能优化对标Github Copilot,CodeGeeX带来更高效、更直观的编程体验!
- 2024-05-29CodeGeeX 智能编程助手 6 项功能升级,在Visual Studio插件市场霸榜2周!
- 2024-05-29AutoMQ 生态集成 Apache Doris
- 2024-05-292024年IDC行业的深度挖掘:机遇、挑战与未来展望
- 2024-05-29五款扩展组件齐发 —— Volcano、Keda、Crane-scheduler 等,邀你体验