databricks multiselect下拉列表选择/取消选择所有值

f2uvfpb9  于 2021-07-14  发布在  Spark
关注(0)|答案(1)|浏览(526)

我们在databricks中使用multiselect下拉列表,基于multiselect小部件中的选择查询结果图形数据。目前,我们可以选择或取消选择一个单独的选项,但我们想有一个方法来选择和取消选择所有的小部件选项。
multiselect小部件的代码:

dbutils.widgets.multiselect("channel", "Temp", [str(x) for x in channel])
rkue9o1l

rkue9o1l1#

我不认为这是可能的多选择小部件。我唯一的建议是在小部件中使用一些选项,这些选项是在读取小部件中的值时以所需的行为实现的。
e、 g.使用附加的“all”和“none”选项创建小部件

channel = ["Foo", "Bar", "Temp"]
dbutils.widgets.multiselect("channel", "Temp", [str(x) for x in channel] + ["None",  "All"])

一种可能的实现是,当选择“无”时,将覆盖所有其他选择。选择“全部”时,将覆盖除“无”之外的所有其他选择。

out = dbutils.widgets.get("channel").split(",")

if "None" in out:
  channel_out = ['']
elif "All" in out:
  channel_out = channel
else:
  channel_out = out

这看起来不像您在ui中想要的那样好,但是它可以让您在运行一组频道和运行全部频道或不运行频道之间进行简单的切换。

相关问题