zoukankan      html  css  js  c++  java
  • flask-script插件

      首先在启动Flask项目时,我们可以传不同的参数作为运行参数。但是我们只能在入口app.run()传参。这样十分的不方便。Flask-Script 是一个 Flask 扩展,为 Flask 程序添加了一个命令行解析器。 Flask-Script 自带了一组常用选项,而且还支持自定义命令。

      自定义创建命令的方法有三种:

    from flask import Flask
    from flask_script import Manager
    from flask_script import Command
    
    app = Flask(__name__)
    
    manager = Manager(app)
    
    
    class Hello(Command):
        'hello world'
    
        def run(self):
            print('hello world!')
    
    #绑定到Hello函数
    manager.add_command('hel', Hello())
    
    if __name__ == '__main__':
        manager.run()

      执行

    (flask_blog) jeff@debian:~/PycharmProjects/flask_blog$ python script_test.py hel
    hello world!

      第二种方法

    from flask import Flask
    from flask_script import Manager
    from flask_script import Command
    
    app = Flask(__name__)
    
    manager = Manager(app)
    
    
    #绑定到Hello函数
    @manager.command
    def hi():
        print('hello world!')
    
    
    if __name__ == '__main__':
        manager.run()

      运行

    (flask_blog) jeff@debian:~/PycharmProjects/flask_blog$ python script_test.py hi
    hello world!

      当参数多个时,使用第三种方式

    from flask import Flask
    from flask_script import Manager
    
    app = Flask(__name__)
    
    manager = Manager(app)
    
    
    @manager.option('-n', '--name', dest='name', help='Your name', default='world')
    def hi(name):
        'hello world or hello <setting name>'
        print('hello', name)
    
    
    if __name__ == '__main__':
        manager.run()

      运行结果:

    (flask_blog) jeff@debian:~/PycharmProjects/flask_blog$ python script_test.py hi
    hello world
    (flask_blog) jeff@debian:~/PycharmProjects/flask_blog$ python script_test.py hi -n jeff
    hello jeff
    (flask_blog) jeff@debian:~/PycharmProjects/flask_blog$ python script_test.py hi --name jeff
    hello jeff
    (flask_blog) jeff@debian:~/PycharmProjects/flask_blog$ python script_test.py hi --name jeff1
    hello jeff1
  • 相关阅读:
    A Bug's Life POJ 2492
    First Training
    洛谷----P1162 填涂颜色
    软考知识点梳理--软件测试
    软考知识点梳理--面向对象方法
    软考知识点梳理--国家信息化体系六要素
    软考知识点梳理--电子政务
    软考知识点梳理--激励理论
    软考知识点梳理--承建方项目论证
    软考知识点梳理--项目成本类型
  • 原文地址:https://www.cnblogs.com/Jeffding/p/8728413.html
Copyright © 2011-2022 走看看