动作类型详解

参数过滤(filter)

过滤决定参数下拉里"能选哪些值"。这一篇讲多选参数怎么从对象集取选项、对象下拉怎么加过滤和 Search Around,以及这些过滤值从哪来。

原文 Palantir Foundry · Action types
本文来源 · Source 内容整理自 Palantir Foundry 官方文档:
https://www.palantir.com/docs/foundry/action-types/parameters-filter/
原始标题:Filter results of a parameter dropdown

一句话速览

参数过滤(filter):过滤决定参数下拉里"能选哪些值"。这一篇讲多选参数怎么从对象集取选项、对象下拉怎么加过滤和 Search Around,以及这些过滤值从哪来。

1 过滤是干嘛的
给参数加过滤(filter),本质上是限定下拉菜单里可选的值
2 从对象集取选项
对多选参数,你可以把允许的值收窄为某个对象集(object set)的属性
3 过滤与 Search Around
对对象引用参数的下拉,动作编辑者可以在配置视图里指定过滤(filters)和Search Around,从而在所有动作界面统一限制下…
4 来源与安全提示
文档特别警告了数据隐私含义(data privacy implications):当对象参数使用了新的校验时,所有能查看该动作类型的…
1

过滤是干嘛的

一句话:把下拉里"可选的值"收窄到允许的范围。

给参数加过滤(filter),本质上是限定下拉菜单里可选的值。文档原话:添加过滤会"决定参数下拉菜单中可选择的值"。过滤既可以用在多选(multiple choice)参数,也可以用在对象引用(object reference)参数的下拉里。

Adding filters … will determine the allowed values that are selectable in the parameter's dropdown menu.添加过滤……将决定参数下拉菜单中可选择的值。

关键在于:过滤后下拉里只会显示匹配的对象,而且选中值在动作执行前还会被再次校验。用户只能看到他们有权限查看的对象。

2

多选:从对象集取选项

把"允许的值"变成某个对象集的属性。

对多选参数,你可以把允许的值收窄为某个对象集(object set)的属性。做法:确保参数设为"显示多个选项",选择 Get options from an object set,配置好对象集,再选一个"包含所有允许值"的属性。

这样就能基于关联对象(linked object)的属性来显示或预填值。比如:只把"与当前工单关联的客户"的邮箱列出来当选项。

  • 如果结果对象集里只有一个关联对象,且参数必填,下拉会自动预填那个属性值。
  • 多选项来自用户有权查看的对象;看不到的对象,其属性也不会出现。
提示:这一机制天然受权限约束——用户不会看到自己无权访问的对象属性。
3

对象下拉:过滤与 Search Around

在参数配置里加过滤和 Search Around,跨所有界面统一生效。

对对象引用参数的下拉,动作编辑者可以在配置视图里指定过滤(filters)Search Around,从而在所有动作界面统一限制下拉里出现的对象。配置后表单只渲染匹配过滤的对象。

反例
过滤值:写死 Name = "机密项目X"风险:该静态值本身可能被无权看对象的人看到
推荐
过滤值:来自参数 Name = {Name 参数}好处:值不直接暴露在界面,尊重对象可见性

Supported operations

在属性上过滤(Filtering on a property):只显示"指定属性匹配任一提供值"的对象。过滤值可以是静态写死从另一个参数推断,或某个对象引用参数的属性。如果提供多个比较值,结果是 OR 关系。

改变起始对象集(Changing the starting object set):默认起始集是"该对象类型的全部对象",可改成任意其它类型,或某个对象引用列表参数。Search Around 则对当前集里每个对象"沿一条链接遍历"生成新集——例如"当前员工的 Github Issue"会拿当前集的 Employees,生成与之关联的 Github Issues 集合。

显示哪些属性:下拉选项展示对象的标题和"突出属性(prominent properties)";匹配搜索词的排前面并高亮,无值的突出属性显示为 No value。具体显示哪些属性由 Ontology Manager 里的可见性决定,而不是动作类型。
5

来源与安全提示

不同来源不仅影响行为,还影响会不会"泄密"。

文档特别警告了数据隐私含义(data privacy implications):当对象参数使用了新的校验时,所有能查看该动作类型的人都可能看到数据。如果过滤里含有敏感的静态值,即便用户看不了被过滤的对象,也能看到这些静态值。下一页(下拉安全)会展开讲。先用小实验感受三种来源的差异:

过滤值来源小实验

点一种过滤值来源,看它对"可见性 / 安全"的影响。

点击上面按钮查看说明。
记住:对象属性或参数来过滤对象集,值不会直接显示在界面里;只有静态值有泄露风险。下一篇专门讲怎么防范。

一页带走

① 过滤=收窄选项
决定下拉里能选什么,执行前再校验。
② 多选取对象集
Get options from an object set,受权限约束。
③ 来源分三类
静态值 / 来自参数 / 对象属性,决定行为与安全。
④ 静态值有风险
写死的值可能泄露,下篇讲防范。

延伸阅读 · 相关页面

按主题横向跳转,不必顺着目录一篇篇读。

常见问题速答 · FAQ

关于「参数过滤(filter)」,读者最常问的几个问题。

过滤是干嘛的是什么?
给参数加过滤(filter),本质上是限定下拉菜单里可选的值。文档原话:添加过滤会"决定参数下拉菜单中可选择的值"。过滤既可以用在多选(multiple choice)参数,也可以用在对象引用(object reference)参数的下拉里。
多选:从对象集取选项是什么?
对多选参数,你可以把允许的值收窄为某个对象集(object set)的属性。做法:确保参数设为"显示多个选项",选择 Get options from an object set,配置好对象集,再选一个"包含所有允许值"的属性。
过滤与 Search Around是什么?
对对象引用参数的下拉,动作编辑者可以在配置视图里指定过滤(filters)和Search Around,从而在所有动作界面统一限制下拉里出现的对象。配置后表单只渲染匹配过滤的对象。
来源与安全提示是什么?
文档特别警告了数据隐私含义(data privacy implications):当对象参数使用了新的校验时,所有能查看该动作类型的人都可能看到数据。如果过滤里含有敏感的静态值,即便用户看不了被过滤的对象,也能看到这些静态值。下一页(下拉安全)会展开讲。