zoukankan      html  css  js  c++  java
  • flask_4:Flask-Script Manager的用法

    1、flask-script的作用

    可以通过命令行的形式来操作flask。例如通过命令跑一个开发版本的服务器、设置数据库、定时任务等。

    2、flask-script的安装

    pip install flask-script
    复制代码

    3、示例代码

    新建文件manage.py,文件中的代码如下

    from flask_script import Manager
    from app.app import app
    
    manager = Manager(app)
    
    # 定义自己要执行的command
    @manager.command
    def test():
        print(u'test run')
        
    if __name__ == '__main__':
        manager.run()
    复制代码

    4、执行命令行

    执行格式:python manage.py [commond]

    # 执行示例中的test中的内容
    python manage.py test
    
    # 启动flask项目的命令
    python manage.py runserver
    复制代码

    5、引用其它文件或第三方的flask-script命令

    实际使用中,我们往往可能会遇到需要引用第三方的flask-script,如flask-migrate。或者期望将一种类型的命令放置同一个文件中统一管理,这时就涉及到如何引入这些flask-script命令的问题

    1. 引用其它文件中的flask-script

    假设我们需要创建的是一个数据库统一处理的命令集文件db_script.py,示例代码如下:

    from flask_script import Manager
    # 注意命名,不能命名成Manager,否则会有冲突
    DBManager = Manager()
    
    @DBManager.command
    def init():
        print('数据库初始化完成')
    
    @DBManager.command
    def migrate():
        print '数据表迁移成功'
    复制代码

    这是原来的manage.py文件中变更如下:

    from flask_script import Manager
    # 变更一:引入定义的命令集对象
    from db_scripts import DBManager
    from app.app import app
    
    manager = Manager(app)
    
    # 变更二:将名利集添加到manager中
    manager.add_command('db', DBManager)
    
    # 定义自己要执行的command
    @manager.command
    def test():
        print(u'test run')
        
    if __name__ == '__main__':
        manager.run()
    复制代码

    执行命令的方式有所不同:

    python manage.py db init
    python manage.py db migrate
    复制代码

    2. 引用第三方的flask-script

    和引入其它文件中的命令集的方式一样,也是需要引入对象和添加到manager中


    本文转载自:
    (1)flask 学习笔记之 Flask-Script :https://juejin.im/post/6844903617976254478
    (2)Flask-Script Manager:https://www.jianshu.com/p/8148e81b42de
  • 相关阅读:
    深入浅出 Redis client/server 交互流程
    VMware三种网络连接模式(转载)
    ARP 原理及攻击
    symbol lookup error:undefined symbol
    printf 颜色格式串"33[34;1m"
    运行openvas
    openvas 安装
    升级openssl 支持TLS1.2
    Windows登录密码明文获取器
    Linux字符串截取和处理命令 cut、printf、awk、sed、sort、wc
  • 原文地址:https://www.cnblogs.com/hailin2018/p/13574339.html
Copyright © 2011-2022 走看看