Python Dash Datatable:行选择不起作用

5

嗨!这是我的表格外观。 我的Dash Code输出

我想在Python控制台中打印所选行的NGID值。 我已经创建了回调函数。但是当我选择行时它什么也不做。

这是我的布局代码:

 def dasher():
             df = pd.read_csv('wyjebany.csv')

             df = df[~df.HOME.str.contains('Beach|Futsal')]
             df = df[~df.COUNTRY.str.contains('Germany Oberliga NOFV|France  Youth U19 
                       League|Portugal Champions NACIONAL Juniores A 1|Spanish Bizkaia-Tercera')]
            df = df.replace(to_replace='Division|League|Liga|Footbal|Primavera', value='', 
                       regex=True)
                       # df = df.replace(to_replace='.', value='', regex=True)
            print(df)
            print(df.columns)

           app.layout = dash_table.DataTable(

                            columns=[{"name": i, "id": i} for i in df.columns],
                           row_selectable='multi',
                           sort_action='native',
                          # editable=True,
                          row_deletable=True,
                         # rows=[{}],
                         selected_rows=[],

                       css=[{'selector': 'tr:hover',
                       'rule': 'background-color:  #80FF80',
                            # 'font-family': 'Times New Roman',

                                   }],
                     html.Div(id='hidden-div', style={'display': 'none'},
             ),

以下是回调函数的代码:

这里是回调函数的代码

@app.callback(
dash.dependencies.Output('hidden-div', 'style'),
[dash.dependencies.Input('table', 'columns'),
dash.dependencies.Input('table', 'selected_rows')])
def print_value(columns,selected_rows):
     print("Hi i am triggered")
     # for i in selected_rows:
     #     print(i)
     selected_rows = [columns[i] for i in selected_rows]
     # selected_rows = pd.DataFrame(rows).iloc[i]
     print(selected_rows)
     style = {'display': 'none'}
     return style
1个回答

4

使用derived_virtual_selected_rows代替selected_rows

这对我起作用了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接