在Flask应用程序中运行Dash应用程序
我有一个现有的Flask应用程序,并且想找到通往另一个应用程序的路线。更具体地说,第二个应用程序是Plotly Dash应用程序。如何在现有的Flask应用程序中运行Dash应用程序?
@app.route('/plotly_dashboard') def render_dashboard():
# go to dash app
我还尝试将路由添加到Dash实例,因为它是Flask应用程序,但出现错误:
AttributeError: 'Dash' object has no attribute 'route'
回答:
从文档:
基本的Flask应用程序可从访问app.server。
import dashapp = dash.Dash(__name__)
server = app.server
你还可以将自己的Flask应用实例传递到Dash中:
import flaskserver = flask.Flask(__name__)
app = dash.Dash(__name__, server=server)
现在有了Flask实例,你可以添加所需的任何路由和其他功能。
@server.route('/hello')def hello():
return 'Hello, World!'
对于一个更笼统的问题,“我如何才能彼此相邻地服务两个Flask实例”,假设你最终没有像上面的Dash答案那样使用一个实例,则可以使用DispatcherMiddleware
这两个应用程序。
dash_app = Dash(__name__)flask_app = Flask(__name__)
application = DispatcherMiddleware(flask_app, {'/dash': dash_app.server})
以上是 在Flask应用程序中运行Dash应用程序 的全部内容, 来源链接: utcz.com/qa/434627.html