FlaskApp 没有属性'config'



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

run.py:

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

.app:

...
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

settings.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

这里有一个错误db.init_app(app).我将其更改为db.init_app(应用程序(,现在它正在成功。

以下是使用 Connexion 设置 Flask 应用程序的一种方法。

import connexion
# This creates the connexion application instance.
connexion_app = connexion.App(__name__)
# This gets the underlying Flask app instance.
flask_app = connexion_app.app  # Flask(__name__)

🤠

最新更新