FlaskApp 没有属性“配置”

Ole*_*kyi 5 python sqlalchemy flask flask-sqlalchemy swagger

全部。我使用 Flask、SQLAlchemy 和 connexion 编写项目。在实现 connexion 之前,所有工作都成功(ps 当应用程序创建为 时app = Flask(__name__)。实现 connexion 后引发异常: 'SQLALCHEMY_DATABASE_URI' not in app.config and AttributeError: 'FlaskApp' object has no attribute 'config'。那么错误在哪里?请帮助。

运行.py:

from app import create_app
app = create_app('development')
if __name__ == '__main__':
    app.run()
Run Code Online (Sandbox Code Playgroud)

应用程序:

...
from settings import app_config
db = SQLAlchemy()
def create_app(config_name):
    # app = Flask(__name__)
    app = connexion.App(__name__)
    app.add_api('swagger.yml')
    application = app.app
    application.config.from_object(app_config[config_name])
    application.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
    db.init_app(app)
    return app
Run Code Online (Sandbox Code Playgroud)

设置.py

class BaseConfig(object):
    DEBUG = False
    CSRF_ENABLED = True
    SECRET = os.getenv('SECRET', 'default_secret_key')
    DEFAULT_URI = 'postgresql://shooter:shooter@localhost/shooterstats'
    SQLALCHEMY_DATABASE_URI = DEFAULT_URI

class DevelopmentConfig(BaseConfig):
    DEBUG = True
Run Code Online (Sandbox Code Playgroud)

Ole*_*kyi 3

这里有一个错误db.init_app(app)。我将其更改为 db.init_app(application) 并且现在工作成功。