管理对象数据
通过管理对象中的数据,可以快速直观的了解对象数据,对象的“布局”页签提供了对象中数据增删改查功能。
如何定义对象编辑页面布局
对于租户创建的自定义对象,系统会自动创建对象的Detail和Records标准页面,Detail页面缺省按字段创建的先后顺序显示该对象的全部字段。开发者可以根据需要,新增定义定制Layout页面,例如定义对象编辑页面Layout。
- 对象详情页面Detail:显示对象中单条记录的详细信息。自定义对象创建字段时,如果选中了“添加本字段到该页面布局”,则详情页面会包含该自定义字段,另外还会包含预置的name字段。默认会按照字段创建的先后顺序,显示该对象的全部字段。
- 对象记录列表页面Records:显示对象数据的记录列表。自定义对象创建字段时,如果选中了“添加本字段到该页面布局”,则记录列表页面会包含该自定义字段,另外还会包含预置的name字段。预览该页面,可增、删、改、查对象数据。
只有自定义对象才会在对象配置页面展示“布局”页签,开发者可在该页签定制自定义对象的布局页。对于系统预置的对象(标准类型对象),不会显示布局页签。
- 在对象配置页面,单击“布局”页签,单击“新建”,填写新建对象布局的基本信息,单击“保存”,这里使用Records标准页面。
图1 新建页面布局
- 在左侧可以选择各种组件,单击中间画布的组件,可以在右侧修改组件的属性等。
- 单击每个字段的Input组件,配置字段属性,如图2的name字段(因为这里使用了Records标准页面,不修改也可以直接保存。如果想添加组件就可以按需求添加)。
系统默认会将该对象所有自定义字段和部分标准字段进行展示,可根据需要进行删除。选中组件,按“Delete”,即可删除该字段。
Field字段属性的参数配置,如表1所示。
表1 输入框属性说明 参数
参数说明
数据绑定
设置组件绑定的数据模型,该输入框取值由模型元数据驱动生成。
属性值绑定:该组件的所有属性的动态设置。当某一属性被动态绑定时,以绑定值为准。
文本类型
输入框的文本类型。
标签
输入框在界面展示的名称。
占位符
设置占位符,可辅助元素对齐,让页面更整齐。
支持国际化配置,在配置该属性时,可选择已有多语言、创建或更新多语言。此处创建的多语言,会保存在租户的多语言库中。
可清空
是否可清空输入值。
默认值
输入框的默认值。
支持国际化配置,在配置该属性时,可选择已有多语言、创建或更新多语言。此处创建的多语言,会保存在租户的多语言库中。
图标
输入框中需要设置图标时,请配置该项。
图标位置
输入框中的图标位置。
最大字符长度
输入框取值的最大字符长度。
最大宽度
输入框最大的宽度。
必填
当该开关打开时,该输入框为必填字段。输入框界面展示会有提示必填,此校验功能必须是输入框存在于某个表单组件中。
必填错误信息
当必填输入框没有进行输入取值时,界面的报错信息。
支持国际化配置,在配置该属性时,可选择已有多语言、创建或更新多语言。此处创建的多语言,会保存在租户的多语言库中。
正则表达式
当输入框字段类型为“Text”或“TextArea”类型,支持进行正则表达式校验。
例如,配置为“^[A-Za-z]+$”,表示该字段只能输入大写的“A-Z”,或小写的“a-z”。
错误信息
当不满足正则表达式规则时,界面的报错信息。
支持国际化配置,在配置该属性时,可选择已有多语言、创建或更新多语言。此处创建的多语言,会保存在租户的多语言库中。
自定义校验
在表单组件中该设置才会生效,为自定义的校验规则。请输入JS代码定义校验规则,代码的返回值必须为布尔类型或对象类型。
- 布尔类型:返回为“false”表示未通过校验,即校验失败,若需要配置错误提示信息,则直接设置界面上“校验错误信息”参数。返回值为“true”,表示通过校验。
- 对象类型:返回为“{result:false, message:'对应错误提示信息'}”,表示未通过校验,message值为错误提示信息。返回为“{result:true}”,表示校验通过,一般不用带提示信息。
举例如下:
- 示例1:校验输入文字内容长度不能超过10个字符。示例JS代码如下:
return value.length <= 10
其中,“value”变量为系统已定义好的,表示输入内容变量,可直接使用该变量
- 示例2:校验输入文字内容,只能输入大写的“A-Z”,或小写的“a-z”。示例JS代码如下:
返回值类型为布尔:
var reg = new RegExp("^[A-Za-z]+$"); return reg.test(value);
返回值类型为对象:var reg = new RegExp("^[A-Za-z]+$"); if (reg.test(value)) { return true; } else { return {result: false, message:'输入内容不符合规则,只能输入大写的A-Z,或者小写的a-z'}; }
- 示例3:校验输入文字内容是否为邮箱,该示例可能不覆盖全部邮箱类型场景,只是举例用。示例JS代码如下:
var reg = new RegExp("^[a-z0-9A-Z]+[- | a-z0-9A-Z . _]+@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-z]{2,}$"); return reg.test(value);
校验错误信息
- 当“自定义校验”中,JS代码返回值类型为布尔类型时,会取该参数的值为错误提示信息。
- 当“自定义校验”中,JS代码返回值类型为对象类型时,直接取返回值中的message值为错误提示信息。
控件名称
当前组件的名称。
隐藏
是否隐藏该组件。
只读
输入框的值是否只读。
禁用
是否禁用该组件。
高级设置
- 样式类:当前组件使用的CSS样式类名,可在CSS代码中进行引用。
- 预设样式:预置的组件样式风格。
- 样式透传:启用后,可以将设置好的样式,透传给组件的子节点。
组件树
如果页面上组件较多,不容易选中时,可以在右侧下方的组件树中,通过选择需要设置的组件名称,快速选中该组件。
- 配置完成后,单击编辑页面左上方的,保存所有配置。
- 保存完成后,单击,可预览效果。
如何使用布局增删改查对象数据
执行下面操作,必须具备如下条件:
- 条件1:已有了需要增删改查数据的目标对象,则不需要执行条件2、条件3。本章节仅以条件2、条件3中的对象和字段为例,介绍如何通过“布局”增删改查对象数据。
- 条件2:创建一个简单的对象Class,对象创建过程请参见创建自定义数据对象。
- 条件3:在对象Class建一个自定义数字类型字段number,自定义字段创建过程请参见定义自定义对象的字段(Fields)。
- 在对象详情页单击“布局”页签,进入该对象的布局。
如图3,单击“Class Records”后的,会弹出布局预览页面。
- 在布局的预览页面,单击“添加”,新增并保存即完成增加一条数据操作。
图4 如何新增数据
- 若需要在布局页面添加对象字段,则执行如下操作。
- 在对象详情页的“布局”页签,单击“Class Records”,进入对象布局页面。
图5 进入对象布局编辑页面
- 单击左上方的,获取锁,选中页面中的表格组件后,单击右侧属性配置处的“添加字段”,选中添加的字段,单击“确定”,添加字段到表格表头上。
图6 添加字段入口
图7 选中字段
- 设置完成后,单击,保存修改。
- 保存成功后,单击,可查看添加字段的数据记录。
- 在对象详情页的“布局”页签,单击“Class Records”,进入对象布局页面。
- 另外您还可以使用控制台、脚本或服务编排快速查询数据,详细操作请参见使用SQL查询数据。
图8 控制台查询对象数据
如果想实现批量快速增删改查数据,需深入学习TypeScript脚本语言和AstroZero平台的相关库和接口,请参见脚本开发。