zoukankan      html  css  js  c++  java
  • flask系列五之flask_script

    1.一个简单的例子

    在工程里面新建一个Python文件命名为manage.py

            (1)安装flask_script包,然后引入

    from flask_script import Manager
    from main import app
    
    manager = Manager(app)
    
    @manager.command
    def runserver():
        print '服务器跑起来了!!!'
    
    if __name__ == '__main__':
        manager.run()

    在命令行里面输入:

    python manage.py runserver

    2.Flask-Script的manage分为主manage文件和分manage文件

    主manage文件

    manage.py:

    from flask_script import Manager
    from main import app
    from db_manage import DBManager
    
    manager = Manager(app)
    
    @manager.command
    def runserver():
        print '服务器跑起来了!!!'
    
    # 引入其他分manage的命令
    manager.add_command('db',DBManager) # 这里的‘db’在命令行操作时,是有用的
    
    if __name__ == '__main__':
        manager.run()

    分manage文件(数据库manage或其他分类)

    db_manage.py

    from flask_script import Manager
    
    DBManager = Manager()
    
    @DBManager.command
    def init():
        print '数据库初始化完成'
    
    @DBManager.command
    def migrate():
        print '数据表迁移成功'

    在命令行下:

    (1)初始化文件

    python manage.py db init

    (2)生成迁移文件

    python manage.py db migrate

    (3)扩展:将迁移文件映射到数据库

    python manage.py db upgrade----映射到数据库

    若是第一次生成则需要按顺序执行上述(1)-(2)-(3)步骤

    若只是增加字段,只需在model中添加字段然后按顺序执行上述的(2)--(3)命令即可更新数据库的字段。

    还有注意要需要将model映射到数据库,需要把具体的类引入到manage.py中,然后才执行命令。例如需要将User映射到数据库,代码如下:

    from models import User

    然后执行上述的(1)-(2)-(3)命令。

  • 相关阅读:
    VSCode的终端修改
    vim总结
    分布式的CAP理论
    MongoDB常用命令总结
    nginx负载均衡总结
    【重要】nginx location配置和rewrite写法
    Linux四剑客find/grep/awk/sed
    IDEA插件开发总结
    支付宝在线支付接口开发流程
    Centos7 网卡Device does not seem to be present解决办法
  • 原文地址:https://www.cnblogs.com/wfaceboss/p/8477540.html
Copyright © 2011-2022 走看看