在 Flask/Dash 中将 app.route 链接到女服务员下的 app.layout
Linking app.route to app.layout in Flask/Dash under waitress
我试图找到这个问题的答案,但没有成功。我想我对发生的事情缺乏了解。
我有一个 dash 应用程序,正在尝试部署到服务器。我把它包在 Flask 里,让女服务员端上来。
该应用程序很简单,HTML 的单页,几个下拉菜单,这些驱动一个报告。我已经排除了细节。
我的问题是我看不到如何从 @app.route 语句中触发 app.layout(HTML 所在的位置)。
文件布局为:
- server.py
- 我的应用程序名称(目录)
-
- init.py
-
- myappname.py
-
- views.py
代码(骨架)
# server.py
from waitress import serve
from myappname import app
serve(app, host='0.0.0.0', port=8050)
# myappname/__init__.py
from flask import Flask, render_template, request, session
from flask_session import Session
app = Flask(__name__)
import myappname.views
# myappname/views.py
from myappname import app
import flask
@app.route('/')
def index():
return flask.redirect('/myappname')
# myappname/myappname.py
import dash
import dash_core_components as dcc
import dash_html_components as html
import numpy as np
from dash.dependencies import Input, Output
from flask import Flask, render_template, request, session
from flask_session import Session
# ... various procedures
server = flask.Flask(__name__)
app = dash.Dash(__name__, server=server, url_base_pathname='/myappname')
app.layout = html.Div([
html.Div(rhubarb
),
html.Div([rhubarb,rhubarb
])
@server.route('/')
def index():
return flask.redirect('/myappname')
@app.callback(
Output('Elementy', 'options'),
[Input('Elementx', 'value')])
def fiddle1(selected_element):
return blah
@app.callback(
Output('Elementz', 'value'),
[Input('Elementy', 'options')])
def fiddle1(available_options):
return blah
如果有人能提供帮助,我将不胜感激。谢谢
折腾了大部分小文件,把app直接放在init.py中。
server.py 现在读作:
from waitress import serve
from myappname import app
application = app.server
serve(application, host='0.0.0.0', port=8050)
我试图找到这个问题的答案,但没有成功。我想我对发生的事情缺乏了解。
我有一个 dash 应用程序,正在尝试部署到服务器。我把它包在 Flask 里,让女服务员端上来。
该应用程序很简单,HTML 的单页,几个下拉菜单,这些驱动一个报告。我已经排除了细节。
我的问题是我看不到如何从 @app.route 语句中触发 app.layout(HTML 所在的位置)。
文件布局为:
- server.py
- 我的应用程序名称(目录)
-
- init.py
-
- myappname.py
-
- views.py
代码(骨架)
# server.py
from waitress import serve
from myappname import app
serve(app, host='0.0.0.0', port=8050)
# myappname/__init__.py
from flask import Flask, render_template, request, session
from flask_session import Session
app = Flask(__name__)
import myappname.views
# myappname/views.py
from myappname import app
import flask
@app.route('/')
def index():
return flask.redirect('/myappname')
# myappname/myappname.py
import dash
import dash_core_components as dcc
import dash_html_components as html
import numpy as np
from dash.dependencies import Input, Output
from flask import Flask, render_template, request, session
from flask_session import Session
# ... various procedures
server = flask.Flask(__name__)
app = dash.Dash(__name__, server=server, url_base_pathname='/myappname')
app.layout = html.Div([
html.Div(rhubarb
),
html.Div([rhubarb,rhubarb
])
@server.route('/')
def index():
return flask.redirect('/myappname')
@app.callback(
Output('Elementy', 'options'),
[Input('Elementx', 'value')])
def fiddle1(selected_element):
return blah
@app.callback(
Output('Elementz', 'value'),
[Input('Elementy', 'options')])
def fiddle1(available_options):
return blah
如果有人能提供帮助,我将不胜感激。谢谢
折腾了大部分小文件,把app直接放在init.py中。 server.py 现在读作:
from waitress import serve
from myappname import app
application = app.server
serve(application, host='0.0.0.0', port=8050)