Plotly dash chained callback

This is my code

import re
import flask
from dash import dcc
from dash import html
from dash import Dash
from dash.dependencies import Input, Output

app = Dash(__name__)

app.layout = html.Div([
    dcc.Location(id='url', refresh=False),
    dcc.Dropdown(options=['bar', 'pie'], id='dropdown', multi=False, value='bar', placeholder='Select graph type'),
    html.Div(id='page-content'),

])

@app.callback(
    Output('see1', 'options'),
    Input('url', 'search') 
)

def ex_projecKey(search):
    return re.search('project_key=(.*)', search).group(1)

@app.callback(
    Output('page-content', 'children'),
    Input('see1', 'options'),
    Input('dropdown', 'value')
)

def update_page(options, value):
    return f'{options}.{value}'

if __name__ == '__main__':
	app.run_server(debug=True, port=4444)

I receive something URL and search project_key
after choice dropdown menu like bar or pie
Then i receive two object (project_key, graph_type )
But two error occur

Property "options" was used with component ID:
  "see1"
in one of the Input items of a callback.
This ID is assigned to a dash_html_components.Div component
in the layout, which does not support this property.
This ID was used in the callback(s) for Output(s):
  page-content.children
Property "options" was used with component ID:
  "see1"
in one of the Output items of a callback.
This ID is assigned to a dash_html_components.Div component
in the layout, which does not support this property.
This ID was used in the callback(s) for Output(s):
  see1.options

first callback Output see1, options
Than second callback Input receive that options inst it?

Hi, the error message is pretty explicit. The html.Div() does not have a property “options”. Maybe your mixed up the component id’s.

1 Like

ahhh… Then Cannot First callback output to second callback input??

Yes you can do this, thats not the problem. The problem is, that your component see1 is a html.Div() which does not have the property options.

1 Like