用例开发SlateRead and write data创建或检索对象集

注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。

创建或检索对象集

平台选项卡下的对象集面板允许您:

  • 创建一个对象集,可以选择添加筛选,且无需额外的服务配置。
  • 使用模板点符号直接访问对象集中的对象(例如 {{s_object_set1.data.property1}})。
  • 使用 {{s_object_set1.objectRids}} 访问对象 RID。

有两种模式:

  • Builder 模式,允许您使用 GUI(图形用户界面)构建对象集,
  • RID 模式,允许您通过引用 对象集 RID版本化对象集 RID 来构建对象集。

对象集筛选器构建模式

要创建对象集 s_object_set1,请选择基础对象类型,然后选择性地添加带有 AND/OR 逻辑的筛选。筛选器的字段将考虑对象的属性数据类型。例如,数值属性将采用数字范围作为筛选器。您可以在每个筛选级别中进一步嵌套各个 AND/OR 筛选器,以限定对象为特定结果。

object-set

您还可以在筛选字段中使用 Slate 的 handlebars,以便可以基于动态变化的输入参数化对象集。

object-set-parameterized

筛选字段还支持使用多项筛选和通配符筛选进行模板化:

  • 要使用多项筛选模板化,您可以直接传入多个术语(例如 ["value1", "value2"])。
  • 或者,您可以传入一个 Handlebars 模板,直接引用输出多个术语的函数。
    • 例如,如果 {{f_my_filters}} 返回 ["value1", "value2"],您可以在对象集编辑器中直接使用 {{f_my_filters}}

对象集结果以表格形式返回在字段 data 下,并在字段 objectRids 中包含所有对象 RID。

object-set-used

对象集限制结果

对象集筛选器还允许您设置返回对象数量的上限。这在概念上类似于 SQL 的 LIMIT 子句,并能加速测试和迭代。

如果限制小于结果总数,可以使用 getNextPagegetPreviousPage 事件来分页浏览结果。当返回大量结果时,这可以提高性能。

聚合

可以使用 平台 选项卡中的对象集编辑器计算对象集上的简单聚合。要创建聚合,请在 输出选项 下开启 聚合 并选择 添加聚合。聚合基于上面定义的结果对象集。

聚合可以使用以下聚合类型之一:计数、平均值、总和、最大值、最小值或基数。当计算除计数以外的聚合时,必须选择一个数值属性。

通过选择 添加聚合,您可以基于一个对象集计算多个聚合。在使用聚合时,预览将只显示聚合的结果。然而,当通过 handlebars 在函数、微件和 Slate 的其他部分引用对象集时,细粒度对象仍然可用。

多维聚合

要在多个维度上聚合对象集数据(例如包含“分组”或分段),需要编写一个 函数 来在计算结果桶的指标之前对数据进行分组和分段。

这些函数返回 聚合类型,Slate 将其解析为用于配置图表和其他 Slate 微件的并行列表数据结构。

如何调用 Foundry 函数的文档 详细介绍了这些从 Slate 进行的交互。

对象集排序

可以按任意参数对结果对象集进行升序或降序排序。可以配置多个属性进行排序,并且从上到下应用排序属性。设置的限制仅在排序后生效。

对象集 RID 模式

在对象集 RID 模式中,Slate 的对象集面板能够接收 对象集 RID版本化对象集 RID,并将其解析回 Slate 的数据数组格式。

这意味着您将有灵活性传递 RID,此外还可以使用 Slate 的参数化对象集构建器。