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  # 真正的同步进去
相关推荐
葫芦和十三1 小时前
图解 MongoDB 02|BSON:你以为存的是 JSON,其实是带类型的二进制
后端·mongodb·agent
葫芦和十三1 小时前
图解 MongoDB 01|文档数据库
后端·mongodb·agent
陈随易3 小时前
VSCode的Copilot扩展支持接入DeepSeek,Kimi了!
前端·后端·程序员
我不是外星人5 小时前
有了 Harness Engineering ,真的还需要研发工程师吗?
前端·后端·ai编程
candyTong5 小时前
RTK 技术原理:一次典型会话里,80% 上下文是怎么省下来的
javascript·后端·架构
Rust研习社7 小时前
组合真的优于继承吗?为什么 Rust 和 Go 都拥抱组合舍弃继承?
后端·rust·编程语言
IT_陈寒7 小时前
JavaScript的闭包把我坑惨了,说好的内存会自动回收呢?
前端·人工智能·后端
CaffeinePro8 小时前
Pydantic深度使用:数据校验、枚举、ORM映射
后端·fastapi
Chenyiax9 小时前
从 Chat 到 Responses:OpenAI API 抽象为什么变了?
后端
MariaH9 小时前
Koa和Express的区别
后端