最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • Flask框架如何让模型和数据同步

    正文概述    2020-02-16   354

    Flask框架如何让模型和数据同步

    使用ORM时,需要执行迁移操作以便在模型和持久化数据之间保持同步。我们使用Flask-Migrate这个扩展来完成该任务。

    首先安装:

    $ pip install flask-migrate
    $ pip install flask_script

    然后在代码中引入:

    from flask_script import Manager
    from flask_migrate import Migrate, MigrateCommand

    进行必要的配置:

    migrate = Migrate(app, db)
    manager = Manager(app)
    manager.add_command('db', MigrateCommand)

    运行管理器:

    if __name__ == '__main__':
        manager.run()

    相关推荐:《Python视频教程》

    完整的代码如下:

    from flask import Flask
    from flask_sqlalchemy import SQLAlchemy
    from flask_script import Manager
    from flask_migrate import Migrate, MigrateCommand
    app = Flask(__name__)
    app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://localhost/appdb'db = SQLAlchemy(app)
    migrate = Migrate(app, db)
    manager = Manager(app)
    manager.add_command('db', MigrateCommand)class Post(db.Model):
        id = db.Column(db.Integer(), primary_key=True)
        title = db.Column(db.String(80), unique=True)
        post_text = db.Column(db.String(255))    
        def __init__(self, title, post_text):
            self.title = title
            self.post_text = post_text@app.route('/')def index():
        return "Hello World"if __name__ == "__main__":
        manager.run()

    使用如下的命令初始化Alembic:

    $ python app.py db init
    Creating directory /Users/Vihar/Desktop/flask-databases/migrations ... done
    ...
    ...
    ...
    Generating /Users/Vihar/Desktop/flask-databases/migrations/alembic.ini ... done

    执行第一个迁移任务:

    $ python app.py db migrate
    INFO  [alembic.runtime.migration] Context impl PostgresqlImpl.
    INFO  [alembic.runtime.migration] Will assume transactional DDL.
    INFO  [alembic.autogenerate.compare] Detected added table 'post'Generating 
    /Users/Vihar/Desktop/flask-databases/migrations/versions/ed3b3a028447_.py ... done

    一旦上述命令执行完毕,我们的数据表就会创建成功。现在更新数据库:

    $ python app.py db upgrade

    Flask框架如何让模型和数据同步

    相关推荐:

    Flask框架如何连接数据库


    起源地下载网 » Flask框架如何让模型和数据同步

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元