Python 3.x 连接:在模块中找不到烧瓶应用程序或工厂

Python 3.x 连接:在模块中找不到烧瓶应用程序或工厂,python-3.x,flask,connexion,Python 3.x,Flask,Connexion,我已经开始使用Flasks蓝图开发基于Flask的API。这很有魅力。 然后我开始重构它,使用connexion和swagger规范。 之后,我无法启动应用程序。我收到以下错误消息: Use "FLASK_APP={module}:name to specify one.'.format(module=module.__name__) flask.cli.NoAppException: Failed to find Flask application or factory in mod

我已经开始使用Flasks蓝图开发基于Flask的API。这很有魅力。 然后我开始重构它,使用connexion和swagger规范。 之后,我无法启动应用程序。我收到以下错误消息:

Use "FLASK_APP={module}:name to specify one.'.format(module=module.__name__)
flask.cli.NoAppException: Failed to find Flask application or factory in module "api.app". Use "FLASK_APP=api.app:name to specify one.
使用的版本:

  • Python 3.7.6
  • 连接2.7.0
  • 烧瓶1.1.2
我的结构看起来像:

api
 |-.flaskenv
 |- init.py
 |- app.py
 
弗拉斯肯夫先生

FLASK_APP=app.py
FLASK_ENV=development
_初始值

app.py

# from flask import Flask
# from api import bp as api_bp
import connexion


# app = Flask(__name__)
# app.register_blueprint(api_bp, url_prefix="/api")
app = connexion.FlaskApp(__name__, specification_dir="./")
app.add_api("swagger.yml")
启动(在我的venv内):

如果我取消对经典Flask编码的注释(并对connexion编码进行注释),一切都正常,端点都可以访问

我还检查了当时可用的环境变量
app=connexion.FlaskApp(uuu name_uuu,specification_dir=“./”)
)。有
.flaskenv
中的值可用

据我所知,
connexion
捆绑了
Flask
,当使用class
FlaskApp
时,它创建了一个类似vanilla Flask框架的应用程序

我的示例与中的示例相同

我不知道为什么vanilla Flask创建应用程序和连接不是

谢谢


Mybeck解决方案

app.py
必须扩展一行才能显示烧瓶类对象:
application=app.app

app.py

import connexion

app = connexion.App("__name__", specification_dir="./")
app.add_api("swagger.yml")
application = app.app

事实证明,我在
app.py
中遗漏了以下行:
application=app.app
flask run --no-debugger
app.py

import connexion

app = connexion.App("__name__", specification_dir="./")
app.add_api("swagger.yml")
application = app.app