@waly01 a sample could be like this
import os
import pandas as pd
from dash import Dash, callback_context, no_update
from dash.dependencies import Input, Output
from dash_table import DataTable
import dash_core_components as dcc
import dash_html_components as html
path = "demo.csv"
df = pd.read_csv(path)
lastmt = os.stat(path).st_mtime
print(lastmt)
app = Dash(__name__)
app.layout = html.Div(
[
DataTable(
id="table",
columns=[{"name": i, "id": i} for i in df.columns],
data=df.to_dict("records"),
export_format="csv",
),
dcc.Interval(id='interval', interval=1000, n_intervals=0)
]
)
@app.callback(Output('table', 'data'), [Input('interval', 'n_intervals')])
def trigger_by_modify(n):
if os.stat(path).st_mtime > lastmt:
print("modified")
lastmt = os.stat(path).st_mtime
return pd.read_csv(path).to_dict('records')
return no_update
if __name__ == "__main__":
app.run_server(debug=True)