Skip to main content
视图(view) 是关于对象记录如何显示的已保存配置:包括显示哪些字段、它们的顺序、是否可见,以及应用的任何筛选器或分组。 使用 defineView() 随你的应用一起提供预配置的视图。 每个对象都会自动获得其主列表视图(服务器预置的“全部 …”表格,即 OBJECT 导航项打开的视图)——包括你的应用创建的对象,其中每个字段对应一列。 你使用 defineView() 定义的视图始终是基于该默认视图之上的附加视图。
src/views/example-view.ts

关键点

  • objectUniversalIdentifier 指定此视图适用于哪个对象。 它可以是你定义的自定义对象,也可以是标准的 Twenty 对象。
  • 对象的主列表视图由服务器拥有:key 已被弃用并会被忽略,因此清单视图永远无法声明它。 如果你希望你的视图在侧边栏中只需一次点击即可访问,请提供一个 VIEW 导航项。
  • fields 控制显示哪些列以及它们的顺序。 每个字段引用一个 fieldMetadataUniversalIdentifier。 若要引用自动创建的系统字段(例如 createdAt),请参阅定位系统元数据
  • 你还可以声明 filtersfilterGroupssortsgroupsfieldGroups 以进行更高级的配置。
  • 当同一对象存在多个视图时,position 控制其排序。

可选属性

上述所有枚举都从 twenty-sdk/define 导出。

过滤器

视图可以附带预先应用的过滤器。 每个过滤器有三个坐标:被筛选的字段运算符(如何比较)以及(与之比较的内容)。 这三者必须全部对齐——在同步时,使用不适用于字段类型的运算符将会被拒绝。

各字段类型支持的运算符

名称相似的字段类型可以使用完全不同的运算符 —— SELECTMULTI_SELECT 就是常见情况。

每个运算符对应的值结构

value 字段始终是可序列化为 JSON 的值,但其期望的结构取决于所使用的运算符:

视图在 UI 中如何显示

单独一个视图无法从侧边栏访问。 要让它显示在侧边栏中,请将其与类型为 VIEW、指向该视图 universalIdentifier导航菜单项配对。 这是规范用法:每个自定义对象通常都会提供一个默认视图,以及一个在侧边栏中打开该视图的条目。