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 小时前
笔试-羊狼过河
python
摸鱼的老谭1 小时前
构建Agent该选Python还是Java ?
java·python·agent
lang201509281 小时前
Spring Boot 官方文档精解:构建与依赖管理
java·spring boot·后端
鄃鳕2 小时前
python 字典 列表 类比c++【python】
c++·python
可触的未来,发芽的智生2 小时前
新奇特:黑猫警长的纳米世界,忆阻器与神经网络的智慧
javascript·人工智能·python·神经网络·架构
程序员三藏2 小时前
Jmeter接口测试与压力测试
自动化测试·软件测试·python·测试工具·jmeter·接口测试·压力测试
烛阴2 小时前
用 Python 揭秘 IP 地址背后的地理位置和信息
前端·python
大宝剑1702 小时前
python环境安装
开发语言·python
why技术2 小时前
从18w到1600w播放量,我的一点思考。
java·前端·后端
间彧2 小时前
Redis Cluster vs Sentinel模式区别
后端