繁体   English   中英

为什么FLASK_APP无法找到我的工厂功能?

[英]Why can't FLASK_APP find my factory function?

我正在尝试使用应用程序工厂重新配置现有的Flask应用程序,以与setup.py一起安装。

当前,在我的不可安装软件包中,我使用了一个名为wsgi.py的文件,并将其指向FLASK_APP

from example.factory import create_app
app = create_app()
export FLASK_APP=wsgi.py
flask run

但是,如果我尝试在安装的软件包中直接将Flask指向工厂,则会出现RuntimeError: Failed to find application in module "example.factory" 在Flask存储库中的示例中找到了这种模式。

export FLASK_APP="example.factory:create_app()"
flask run  # doesn't find the app

为什么在直接方法失败时wsgi.py方法可以工作?

我将烧瓶应用程序名称保留为flask.py

将其更改为flaskfile.py或其他任何名称,但不能单独使用flask对我flaskfile.py

也许flask是一个关键字。

您需要使用与您使用的Flask版本匹配的文档和示例。

您正在从master分支查看教程。 但是您使用的是当前的Flask版本,该版本尚不支持检测应用程序工厂。 在1.0发布之前,您仍然需要使用当前的方法指向创建该应用程序的文件。

仔细检查您是否确实在create_app中返回了“ app”变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM