Python 使用带有炼金术和破折号的烧瓶

Python 使用带有炼金术和破折号的烧瓶,python,flask,flask-sqlalchemy,plotly-dash,Python,Flask,Flask Sqlalchemy,Plotly Dash,我正在尝试构建一个web应用程序来显示一些数据。到目前为止,我已经使用SQL数据库建立了一个Flask框架。我现在正在尝试设置仪表板。我创建了两个应用程序和数据库,如下所示: server = Flask(__name__) app = Dash(__name__, server=server, url_base_pathname='/dashboard/') app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///site.db' db = SQL

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

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'
回溯(最近一次呼叫最后一次):
文件“/Users/annabernbaum/OneDrive-伦敦帝国理工学院/Documents/Work/Year 4/Sensing and IoT/Project/SIOT_Project_DE4/Coursework_2/run.py”,第1行,in
从LightDogs导入应用程序
文件“/Users/annabernbaum/OneDrive-Imperial College London/Documents/Work/Year 4/Sensing and IoT/Project/SIOT_Project_DE4/Coursework_2/LightDogs/__init__.py”,第12行
db=SQLAlchemy(应用程序)#创建数据库
文件“/Users/annabernbaum/anaconda3/lib/python3.6/site packages/flask\u sqlalchemy/\uuuuuuuuu init\uuuuuu.py”,第683行,在uuu init中__
self.init_应用程序(应用程序)
文件“/Users/annabernbaum/anaconda3/lib/python3.6/site packages/flask\u sqlalchemy/\uuuuuuuuu init\uuuuuuu.py”,第799行,在init\u应用程序中
app.extensions['sqlalchemy']=\u SQLAlchemyState(self)
AttributeError:“Dash”对象没有属性“extensions”
有人知道如何通过Dash应用程序成功创建SQLAlchemy数据库吗


谢谢

使用烧瓶应用程序而不是仪表板应用程序初始化db

您的代码应该如下所示:

db = SQLAlchemy(server)

希望这有帮助。

Full stacktrace可能会有帮助。嗨,米哈伊尔,我现在已经添加了完整的回溯,为什么不使用flask应用程序初始化
SQLAlchemy
,也就是说,
server.config['SQLAlchemy\u DATABASE\u URI']='sqlite:///site.db'; db=SQLAlchemy(服务器)