Skip to main content

选项数据源

1 说明

本平台上选择类的组件,例如单选框、多选框、下拉框、多选下拉框、穿梭框、树选择、标签,都支持单独配置选项的数据来源,本文档以【下拉框】为例说明选项数据源的配置方式,配置方式对选择类组件通用。

2 配置说明

2.1 默认

采用默认数据源模式,系统将根据下拉框绑定的属性自动展示选项,通常用于绑定枚举类型的属性时。如下图,有一个学生实体,其中一个属性是性别(枚举类型),当我们搭建一个表单用于输入学生信息时,可以选择用下拉框绑定性别属性,采用默认的下拉框数据源,此时会自动填充选项为对应的枚举

2.2 静态

下拉框的可选项静态添加,点击编辑按钮,在弹窗里批量编辑选项

每个选项有实际值和展示值:

  1. 实际值代表真实存储的值,需要数字或英文字母开头,支持数字、英文字母、下划线,必填;
  2. 展示值代表页面上给用户展示的值,不限制格式,需要有可读性,非必填,不填写时默认取实际值;

效果如下:

2.3 逻辑

下拉框的可选项是逻辑返回的

如下图所示,配置了一条逻辑,查询当前时间之前创建的所有学生数据并返回

已知此前创建过的学生信息如下图表格所示

此时我们配置课程这个实体的表单页,课程名用下拉框作为输入元素,下拉框数据源选择这条逻辑,显示字段选择课程,即运行时看到这个下拉框的可选项为此前创建学生信息时填写过的课程名

2.4 业务连接器

下拉框的可选项是来源于业务连接器的

如下图所示为[年级管理]连接器返回的数据结构和请求结果,可以看到其中gradeName这个字段的返回值有高一、高二、高三,我们希望以此为下拉框数据源

在表单里配置下拉框数据源为[年级管理]这个连接器,并选择展示值是gradeName,存储值可按需设置,一般设置为 id。

运行时查看效果,这个下拉框的选项即为连接器的gradeName字段的值(高一、高二、高三)。

2.5 实体筛选

  1. 实体筛选:下拉框的选项来源于其绑定的实体属性的值,根据需要设置筛选条件,无条件时范围为所有,有条件则仅包含满足条件的值;
  2. 依赖关系:依赖关系指将本选项数据源和其他数据之间的选择产生关联,比如选择选择省-市时,需要根据选择的省来确定市的数据范围,此时就要选择依赖关系。 如下图所示的领域模型中,有学生、省、市这几个实体

首先维护一下省和市的信息

  1. 省信息用简单表单维护即可,如下图,添加了浙江和江苏两个省

  1. 添加市的信息时,要把和省的关联一起维护上,如下图是添加市信息的表单,其中省这个下拉框通过省市之间的关联关系绑定到省名称上

通过以上表单添加了市信息,如下图,

  1. 学生信息的表单页,用两个下拉框分别输入省和市。

省下拉框通过学生和省的关联关系绑定到省名称上,下拉框数据源选择实体筛选,无需设置条件;

市下拉框通过学生和市的关联关系绑定到市名称上,下拉框数据源选择实体筛选,并开启依赖关系,依赖于省下拉框;筛选条件:市关联的省的 gonggong_id=省下拉框输入的省份的 gonggong_id

  1. 效果:学生表单,选择省份后,市的可选项会根据所选择的省显示

3 树选择的特殊说明

树选择的选项数据源,需要配置与层级结构相关的内容,如下图所示

  1. 层级属性:用于标识树形结构数据的 children 字段,选择的是领域模型的关联的线。

  1. 主键属性:用于标识属性结构数据的 key 字段,即条数据的唯一值。只在数据源使用逻辑的时候出现,当数据源使用数据库的时候默认为 gonggong_id。
  2. 节点名称:用于标识属性结构数据的 title 字段。
  3. 依赖关系:依赖关系指将本选项数据源和其他数据之间的选择产生关联,比如选择选择省-市时,需要根据选择的省来确定市的数据范围,此时就要选择依赖关系。