新增字段问题
来源:2-1 设计数据库模型并创建表
weixin_慕函数学无止境
2020-08-25 13:19:55
视频里,老师没新增一个字段,就要删除原来的表,再重新创建,难道每次同步数据库时候都要db.drop_all()全部删除一次表么?数据表多的时候,这样工作量很大,很不方便吧?如果项目需要数据表里新增一个字段来扩展功能,同步时,能不能保留数据库里的记录,不使用db.drop_all()删表?
1回答
同学,你好。同学可以根据下述方法进行操作
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 # 对迁移文件进行迁移
如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~
相似问题