python-3.x - Python Dash数据表:行选择不起作用
问题描述
嘿那里!这是我的桌子的样子。 我的 Dash 代码输出
我想在 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
解决方案
使用derived_virtual_selected_rows
而不是selected_rows
.
它对我有用
推荐阅读
- javascript - EventEmitter 的上下文“this”
没有分配给 Observable 类型的 'this' 方法 - java - JFreeChart:尽管已加载库,但没有此类方法错误
- c++ - c ++使用struct作为私有成员变量
- react-native - react-native-maps构建时编译错误
- r - 多个因素的正态概率图
- c# - 如何在父应用程序和 WPF 表单之间切换焦点?
- ruby-on-rails - Ruby 升级后无法运行(sqlite3_native LoadError);sqlite3 没有正确升级
- java - 如何检查任何多个“错误”布尔值是否为真?
- php - 来自机架空间或谷歌云的 MySQL 数据库 IP 地址?
- google-cloud-functions - @google-cloud/functions-emulator 已安装,但“-bash: functions: command not found”