flask-migrate 更新 迁移数据库

掌握好migrate比较重要,这便于在同一个项目里升级产品

高频使用是技术成熟的基本方法,你每天都重复吗?

记得写完博客程序了有一段时间了,当时功能可能没有写的很全,今天呢,又想起来搞一下(其实不是刚想起,是早有打算的,拖延症……莫的法阿)。

我要给数据库加一个字段,如果用php可能就不会有这个动作了,但是我用的时python flask + sqlalchemy。他有很强大的数据库迁移功能,实现的是可以不用先删除旧表更新数据库,这样可以完整保存你的开发记录。
里面有几个命令可以滚回,合并,更新。妈的有几个月没使了,居然给忘记了,马上翻阅文档,特意记录下来,下回再忘记了就来查询。
1、需要添加的数据库表、字段

   """
    文章表,只有注册的用户才能发表文章,必须制定分类
    """
    __tablename__ = "tb_article"
    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey("tb_user.id"))
    category_id = db.Column(db.Integer, db.ForeignKey("tb_category.id"))
    title = db.Column(db.String(64))
    url_title = db.Column(db.String(32))
    keywords = db.Column(db.String(32))
    description = db.Column(db.String(255))
    image = db.Column(db.String(255))
    content = db.Column(db.Text)
    markdown = db.Column(db.Text)
    top = db.Column(db.SmallInteger)
    relationship = db.Column(db.Text)
    status = db.Column(db.SmallInteger)
    reply = db.relationship("Reply", backref="article")
    count = db.Column(db.Integer, default=int(100))

2、创建迁移脚本

python manage.py db migrate -m "添加你的修改信息"  #跟git commit -m ""是一样的意思

3、更新数据库

python manage.py db upgrade

参考文献

相关文章