Hi dash community!, here i have created a table in page 1 when i select few rows and move to next page the selected rows are deselected. i have tried few things like storing the selected_rows in dcc.Store(id=‘temp’,storage_type=‘session’) and feeding it back to table. But it didn’t work.
**app.py**
import dash
app = dash.Dash(name, suppress_callback_exceptions=True)
server = app.server
page1.py
import dash_html_components as html import dash_table import pandas as pd import dash_bootstrap_components as dbc import dash_core_components as dcc fruits_df=pd.DataFrame(dict( Fruits=["Mango","Orange","WaterMelon","Grapes"], Price=["2","2.36","1.2","3.2"] )) layout=dbc.Col([html.Div([ dash_table.DataTable( id='fruits_table', columns=[{"name": i, "id": i} for i in fruits_df.columns], data=fruits_df.to_dict('records'), page_current = 0, selected_rows=[], row_selectable="multi"), dcc.Link('Go To Page 2', href='/page2/'), dcc.Store(id='temp',storage_type='session'), ]) ],width=5)
page2.py
import dash_html_components as html import dash_core_components as dcc layout=html.Div([ html.H3('Page 2'), dcc.Link('Go To Page 1', href='/') ])
index.py
import dash_html_components as html import dash_table from dash import Dash from app import app from dash.dependencies import Output, Input import page1 import page2 app.layout = html.Div([ dcc.Location(id='url', refresh=False), html.Div(id='content') ]) @app.callback(Output('content', 'children'), [Input('url', 'pathname')]) def display_page(pathname): print(pathname) if pathname == '/': return page1.layout elif pathname == '/page2/': return page2.layout else: return '404' if __name__ == '__main__': app.run_server(debug=True)
I don’t have any experience in Dash, i don’t known whether I’m doing it properly or not.
So, Any ideas are highly appreciated.
Thanks !