新增字段问题

来源:2-1 设计数据库模型并创建表

weixin_慕函数学无止境

2020-08-25 13:19:55

视频里,老师没新增一个字段,就要删除原来的表,再重新创建,难道每次同步数据库时候都要db.drop_all()全部删除一次表么?数据表多的时候,这样工作量很大,很不方便吧?如果项目需要数据表里新增一个字段来扩展功能,同步时,能不能保留数据库里的记录,不使用db.drop_all()删表?

写回答

1回答

时间,

2020-08-25

同学,你好。同学可以根据下述方法进行操作

1、安装pip install flask-migrate和flask_script

2、创建manage.py文件,文件中的代码如下:

from flask_script import Manager
from flask_migrate import Migrate,MigrateCommand
from app import app
from app import db

manager = Manager(app)
# 要使用flask-migrate,必须先绑定db和app
migrate = Migrate(app, db)

# 2.把migrateCommand命令添加到manager中。
manager.add_command('db', MigrateCommand)
if __name__ == "__main__":
    manager.run()

3、第一次进行迁移时:

python manage.py db init  # 初始化迁移文件,系统默认生成migrate文件夹
python manage.py db migrate # 检查模型字段是否修改,如果改变,就产生新的迁移文件
python manage.py db upgrade # 对迁移文件进行迁移

后面迁移时只需要进行如下两步骤:

python manage.py db migrate # 检查模型字段是否修改,如果改变,就产生新的迁移文件
python manage.py db upgrade # 对迁移文件进行迁移

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

0

0 学习 · 3562 问题

查看课程