【问题标题】:Run Flask app with arguments in command line在命令行中使用参数运行 Flask 应用程序
【发布时间】:2021-11-26 00:40:13
【问题描述】:

我有一个运行良好的烧瓶应用程序。但是,在命令行中运行应用程序时,我需要包含参数。我可以使用python app.py arg1,但是当我尝试使用flask run arg1 时会抛出错误:

Error: Got unexpected extra argument (arg1)

有没有办法给flask run 命令添加参数?

【问题讨论】:

    标签: python flask command-line-arguments


    【解决方案1】:

    您可以像这样定义入口点,而不是使用flask run

    import sys
    from flask import Flask
    
    if __name__ == '__main__':
      foo = sys.argv[1]  
      app = Flask(__name__)
      app.config['foo'] = foo
      app.run()
    

    但是,创建自定义 cli 命令来为您获取参数并启动烧瓶应用程序可能更明智。 阅读有关自定义 cli 命令的更多信息here

    【讨论】:

    • 它工作正常。但是,我想使用flask run,因为我还想添加--port=5000 和此类参数。
    • 您可以使用 stdlib 中的 argparse 模块创建更复杂的 cli 命令。它允许您以--param <value> 的样式指定参数,并且使用起来相对简单。
    猜你喜欢
    • 2021-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-24
    • 1970-01-01
    • 1970-01-01
    • 2015-03-04
    • 1970-01-01
    相关资源
    最近更新 更多