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  # 真正的同步进去
相关推荐
Dxy12393102168 分钟前
Python如何结合AI解决数据分析问题
人工智能·python·数据分析
IvanCodes19 分钟前
Python 基础语法(七):推导式与常见遍历写法
开发语言·python
wing9831 分钟前
从codex转战workbuddy使用一周的感受
前端·人工智能·后端
EatFan39 分钟前
Java接入支付宝 JSAPI 支付保姆教程(二):流程讲解与前后端代码讲解
前端·spring boot·后端·微信小程序·小程序·uni-app
zhangzeyuaaa41 分钟前
Python requests:raise_for_status() 与 4xx/5xx 异常层次详解
开发语言·python
泡海椒1 小时前
动态代理核心原理:JQuick-Java接口规则自动生成机制解析
java·开发语言·python
余槐i1 小时前
Firecrawl 实战:将网站转换为大模型可用数据
人工智能·python·工具·firecrawl
shirsl1 小时前
算法 Day 2 滑动窗口 + 栈 / 单调栈
开发语言·python·算法
步行cgn1 小时前
Spring 启动报错:BeanFactory not initialized 的原因与解决
java·python·spring
步行cgn1 小时前
Spring 报错:No bean class specified on bean definition 的原因与解决
java·后端·spring