使用“ flask run”或“ python run”?

时间:2018-09-11 12:48:58

标签: python flask

阅读http://flask.pocoo.org/docs/1.0/quickstart/描述了使用“烧瓶运行”来启动基于烧瓶的应用程序。

我一直在使用python run.py myconfig.conf,因为在烧瓶启动过程中似乎没有设置配置文件'myconfig.conf'的选项。

我的运行代码:

if __name__ == '__main__':
    app.config.from_pyfile(sys.argv[1]))

    app.run(host='0.0.0.0', port=app.config["PORT"])

可以看到myconfig.conf已向sys.argv[1]注册 我应该使用烧瓶机制而不是python执行烧瓶服务器吗?如果是这样,如何将myconfig.conf传递给主方法?

使用方式:

flask run myconfig.py

返回错误:

Usage: flask run [OPTIONS]

Error: Got unexpected extra argument (myconfig.py)

2 个答案:

答案 0 :(得分:0)

您可以使用flasks自定义命令(http://flask.pocoo.org/docs/1.0/cli/#custom-commands),这将帮助您定义自己的flask命令行选项。在这里可以设置app.config.from_pyfile(confige_file)。然后运行flask run以执行flask服务器。

    @app.cli.command()
    @click.argument('config_file')
    def set_config(config_file):
        app.config.from_pyfile(confige_file)

答案 1 :(得分:0)

  

要运行该应用程序,您可以使用flask命令或将Flask与python的-m开关配合使用。在执行此操作之前,您需要通过导出FLASK_APP环境变量来告诉终端应用程序可以使用:

     

$ export FLASK_APP = hello.py

     

$烧瓶运行

     

来自上面的链接本身。您必须将FLASK_APP环境变量设置为脚本