部署 Flask Web 应用程序时女服务员命令行返回 "Malformed Application"

waitress command line returning "Malformed Application" when deploying flask web app

我正在尝试部署一个简单的 Web 应用程序,并且我正在使用命令行 waitress-serve --call 命令。但是每次,命令立即 returns 1. Malformed application 'name_of_project_here'.

这是我在 python 中的 Flask Web 应用程序:

from flask import Flask, render_template
app = Flask(__name__)

@app.route('/')
def index():
    return render_template('base.html')

if __name__ == '__main__':
   app.run(debug = True)

而我 运行 的命令只是

waitress-serve --call "name_of_project"

我确实尝试查看了文档,找到了错误发生的位置,但找不到错误发生原因的解释。格式错误的应用程序是什么意思?

最小工作示例:

如果将代码放入文件 main.py

from flask import Flask

def create_app():
    app = Flask(__name__)

    @app.route('/')
    def index():
        return "Hello World!"

    return app

if __name__ == '__main__':
    app = create_app()
    app.run()    

然后你可以运行它作为

waitress-serve --call "main:create_app"

所以 "name_of_project" 必须是 "filename:function_name",这会创建 Flask() 个实例。

不能是任何文字。如果你忘记 : 那么你可能会看到 "Malformed application"

在定义您的应用程序名称和初始化您的应用程序的函数时:不要将它们放在引号中('')