From https://community.plot.ly/t/multiple-callback-error/24981
Probably came from removing the MutableMapping mixin https://github.com/plotly/dash/pull/753
This app has bad IDs in the second callback:
import dash
import dash_html_components as html
import dash_core_components as dcc
from dash.dependencies import Input, Output
series = [str(i) for i in range(20)]
all_options = {
'group_1': series[1:5],
'group_2': series[6:10],
'group_3': series[11:-1],
}
app = dash.Dash()
app.layout = html.Div(children=[
html.P([
html.Label('Choose a group:'),
dcc.Dropdown(
id='groups_dropdown',
options=[{'label': k, 'value': k} for k in all_options.keys()],
value='group_1'
)
], style=dict(width='400px')),
html.P([
html.Label('Choose a series:'),
dcc.Dropdown(id='series_dropdown')
], style=dict(width='400px')),
])
@app.callback(Output('series_dropdown', 'options'),
[Input('groups_dropdown', 'value')])
def set_series_options(selected_group):
return [{'label': i, 'value': i} for i in all_options[selected_group]]
@app.callback(Output('series-dropdown', 'value'),
[Input('series-dropdown', 'options')])
def set_series_value(available_options):
return available_options[0]['value']
if __name__ == '__main__':
app.run_server(debug=True)
But the error is broken:
Traceback (most recent call last):
File "f.py", line 40, in <module>
[Input('series-dropdown', 'options')])
File "/Users/alex/plotly/dash/dash/dash.py", line 1156, in callback
self._validate_callback(output, inputs, state)
File "/Users/alex/plotly/dash/dash/dash.py", line 865, in _validate_callback
list(layout.keys()) + (
AttributeError: 'Div' object has no attribute 'keys'
Hi,
I am having the same issue. These are the libraries versions if it can help:
dash
dash-html-components==0.13.4
dash-core-components==0.42.1
dash-daq
dash-table==3.1.11
Does this depend only on the new version of dash? Or maybe the other components are related?
@shoegazerstella if the issue is what I think it is, it's specific to dash 1.0.0 via #753 - I expect we'll be able to fix this for the next release.
Hi, I'm running into the same problem. I'd like to follow up if this has fixed yet? Thank you.
Most helpful comment
Hi,
I am having the same issue. These are the libraries versions if it can help:
Does this depend only on the new version of dash? Or maybe the other components are related?