【问题标题】:Using Flask with SQLAlchemy and Dash将 Flask 与 SQLAlchemy 和 Dash 一起使用
【发布时间】:2019-05-28 16:59:41
【问题描述】:

我正在尝试构建一个 Web 应用程序来显示一些数据。到目前为止,我已经使用 SQL 数据库建立了一个 Flask 框架。我现在正在尝试设置 Dash 仪表板。我按如下方式创建 2 个应用程序和数据库:

server = Flask(__name__)
app = Dash(__name__, server=server, url_base_pathname='/dashboard/')
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///site.db'
db = SQLAlchemy(app) # create database

但是这会引发错误:

Traceback (most recent call last):
  File "/Users/annabernbaum/OneDrive - Imperial College London/Documents/Work/Year 4/Sensing and IoT/Project/SIOT_Project_DE4/Coursework_2/run.py", line 1, in <module>
    from LightDogs import app
  File "/Users/annabernbaum/OneDrive - Imperial College London/Documents/Work/Year 4/Sensing and IoT/Project/SIOT_Project_DE4/Coursework_2/LightDogs/__init__.py", line 12, in <module>
    db = SQLAlchemy(app) # create database
  File "/Users/annabernbaum/anaconda3/lib/python3.6/site-packages/flask_sqlalchemy/__init__.py", line 683, in __init__
    self.init_app(app)
  File "/Users/annabernbaum/anaconda3/lib/python3.6/site-packages/flask_sqlalchemy/__init__.py", line 799, in init_app
    app.extensions['sqlalchemy'] = _SQLAlchemyState(self)
AttributeError: 'Dash' object has no attribute 'extensions'

有谁知道如何通过 Dash 应用程序成功创建 SQLAlchemy 数据库?

谢谢!

【问题讨论】:

  • 完整的堆栈跟踪可能会有所帮助。
  • 嗨,Mikhail,我现在添加了完整的回溯
  • 为什么不用flask app初始化SQLAlchemy,也就是server.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///site.db'; db = SQLAlchemy(server)

标签: python flask flask-sqlalchemy plotly-dash


【解决方案1】:

使用 Flask 应用而不是 Dash 应用初始化数据库。

您的代码应如下所示:

db = SQLAlchemy(server)

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-05
    • 2011-06-01
    • 2013-10-07
    • 2019-05-18
    • 1970-01-01
    • 2016-06-16
    • 2020-03-13
    • 1970-01-01
    相关资源
    最近更新 更多