python - FlaskApp 没有属性“配置”
问题描述
全部。我使用 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()
应用程序:
...
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
设置.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(application) ,现在它正在成功运行。
推荐阅读
- python - 如何使用 Python 和 BeautifulSoup 访问检查中显示的特定表以进行网络抓取
- reactjs - 如何在 NextJS 项目中填充 IE11?
- mysql - Spring Boot Hibernate ManyToMany Relation 使用嵌入式模型
- python - 根据列的(字符串)内容将一行分成多行
- mysql - 选择更改其最后值的记录
- python - 在 Python 中使用 to_excel 函数时如何删除空行
- json - 在 Flutter 中解析 JSON 会导致对象字段的 NULL 值
- python-3.x - Python - 多行文本解析器
- python - 我试图编写一个循环问题的程序,直到用户停止输入,但我不断收到无效的语法错误
- excel - Excel VBA - 取消隐藏行会清除它们的格式