flask-migrate使用

1.介绍

表,字段发生变化,都会有记录,自动同步到数据库中--》django支持这种操作

原生的sqlalchemy,不支持修改表的

flask-migrate可以实现类似于django的

python manage.py makemigrations #记录

python manage.py migrate #真正的同步到数据库

2.准备工作-

安装flask,flask-script,flask-migrate,flask和flask-migrate不要安装最新的,会有版本冲突

复制代码
pip insatll flask==2.2.2
pip install flask-script==2.0.3
pip install flask-migrate==2.7.0

2.1 在manage.py也就是刚创建项目的app.py

python 复制代码
from flask_script import Manager
from flask_migrate import Migrate, MigrateCommand
manager = Manager(app)
# flask-script可以自定义命令---》
# flask-migrate本质是它借助于flask-script增加了几个命令来对数据库表和字段进行管理
Migrate(app, db) # sqlalchemy的db对象
manager.add_command('db', MigrateCommand) 
        
manager.run() # 以后使用python manage.py runserver 启动项目

2.2 很重要

还要在apps的__init__页面导入创建的表名

python 复制代码
from .user.models import User

2.3 以后第一次执行一下

python 复制代码
python manage.py db init  
# 生成一个migrations文件夹,里面以后不要动,记录迁移的编号

2.4 4 以后在models.py 写表,加字段,删字段,改参数

python 复制代码
 5 只需要执行
    	python manage.py db migrate  # 记录
        python manage.py db upgrade  # 真正的同步进去
相关推荐
dfdfadffa8 分钟前
如何用模块化方案组织一个可扩展的前端组件库项目
jvm·数据库·python
2301_8125396715 分钟前
SQL中如何高效实现分组数据的批量更新_利用窗口函数与JOIN
jvm·数据库·python
RSTJ_162520 分钟前
PYTHON+AI LLM DAY THREETY-NINE
开发语言·人工智能·python
2501_9012005322 分钟前
如何实现SQL存储过程存储过程参数标准化_统一命名规范
jvm·数据库·python
运气好好的1 小时前
Golang怎么用embed嵌入SQL文件_Golang如何将SQL迁移文件嵌入Go程序统一管理【技巧】
jvm·数据库·python
想学习java初学者1 小时前
SpringBoot整合Vertx-Mqtt多租户(优化版)
java·spring boot·后端
AC赳赳老秦1 小时前
政企内网落地:OpenClaw 离线环境深度适配方案,无外网场景下本地化模型对接与全功能使用
java·大数据·运维·python·自动化·deepseek·openclaw
星越华夏1 小时前
python 将相对路径变成绝对路径
python
l1t1 小时前
mingw和Linux中的gcc和llvm编译器编译的pocketpy执行同一个python脚本的不同效果
linux·运维·python
砚底藏山河2 小时前
股票数据API接口:如何获取股票历历史分时KDJ数据
java·python·maven