如何从 app.callback 返回数据帧,并将我的作为输出作为 dbc.Table.from_dataframe

b d*_*xon 4 python twitter-bootstrap plotly-dash

我试图在单击搜索按钮时加载表,并提供 ID/密码。我的输出是一个 dbc.Table.from_dataframe,它允许一个 df 参数;但是,当我将其用作输出属性时,出现错误。

以下是“my_table”中的可用属性: ['children', 'id', 'style', 'className', 'key', 'tag', 'size', 'bordered', 'borderless', 'striped' , 'dark', 'hover', 'responsive', 'loading_state']

我在这里阅读文档 https://dash-bootstrap-components.opensource.faculty.ai/l/components/table

我试过这样使用“儿童”,但也没有用。我知道使用 dcc 表我需要返回一个字典,但是我认为使用 dbc.Table.from_dataframe 我可以返回一个数据帧。

@app.callback(Output('my_table', 'df' ),
               [Input('search-button','n_clicks')],
               [State('input-id', 'value'),
               State('input-password', 'value')]
           )
def search_fi(n_clicks, iuser, ipasw):
    if n_clicks > 0:

        df = pd.DataFrame(
         {
             "First Name": ["Arthur", "Ford", "Zaphod", "Trillian"],
             "Last Name": ["Dent", "Prefect", "Beeblebrox", "Astra"],
         }
        return df
Run Code Online (Sandbox Code Playgroud)

小智 5

import dash
import dash_html_components as html
import dash_bootstrap_components as dbc
import pandas as pd

external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

app.layout = html.Div([
    html.Button('Table', id='table-but', n_clicks=0),
    html.Div(id='container-button-basic')
])


@app.callback(
    dash.dependencies.Output('container-button-basic', 'children'),
    [dash.dependencies.Input('table-but', 'n_clicks')])

def search_fi(n_clicks):
    if n_clicks > 0:
        df = pd.DataFrame(
         {
             "First Name": ["Arthur", "Ford", "Zaphod", "Trillian"],
             "Last Name": ["Dent", "Prefect", "Beeblebrox", "Astra"]
         })
        print(df)
        return dbc.Table.from_dataframe(df)


if __name__ == '__main__':
    app.run_server(debug=True)
Run Code Online (Sandbox Code Playgroud)

或者

例子