实体与字段设计

一、实体(Entity)的概念

在低代码平台中,实体是数据模型的核心载体,它对应现实世界中的业务对象或概念。可以将其理解为传统数据库中的“表”,但低代码平台赋予了它更丰富的语义和可视化能力。

实体的核心特征包括:

  • 业务映射:每个实体代表一个具体的业务对象,如“客户”、“订单”、“产品”。
  • 数据容器:实体是字段的集合,用于存储结构化数据。
  • 关系锚点:实体之间通过关系字段(如关联、聚合)形成数据网络。
  • 权限边界:低代码平台通常以实体为单位进行数据权限控制。

示例:一个“客户”实体可能包含以下字段:客户名称、联系电话、邮箱、所属行业、创建时间等。

二、字段(Field)类型详解

字段是实体的最小数据单元。低代码平台通常提供丰富的字段类型,以满足不同业务场景。以下是核心字段类型分类及详解:

分类 字段类型 说明 典型用途
基础类型 单行文本 存储短文本,如姓名、标题。通常有长度限制(如255字符)。 客户名称、订单编号
多行文本 存储长文本,支持换行。可配置为富文本(支持HTML)。 备注、产品描述
数字 存储整数或小数。可设置精度、取值范围、单位。 价格、数量、年龄
布尔值 存储真/假值。在UI中通常显示为开关或复选框。 是否启用、是否VIP
时间类型 日期 仅存储日期(年-月-日)。 出生日期、合同签署日
时间 仅存储时间(时:分:秒)。 营业开始时间
日期时间 存储日期和时间组合。 创建时间、最后修改时间
时间戳 自动记录数据创建或更新的精确时间,通常不可手动编辑。 系统审计字段
选择类型 单选 从预定义选项中选择一个值。选项可动态加载或静态定义。 性别、订单状态
多选 从预定义选项中选择多个值。存储为数组或逗号分隔字符串。 兴趣爱好、标签
下拉关联 从其他实体的数据中选择一个记录。本质是关系字段的简化形式。 选择负责人(关联用户实体)
文件类型 附件 上传并存储文件(图片、文档等)。支持大小、格式限制。 合同扫描件、产品图片
图片 专门用于图片上传,支持缩略图生成、裁剪。 头像、商品主图
关系类型 关联记录 建立实体间的一对一、一对多、多对多关系。 订单关联客户(多对一)
主子明细 一种特殊的一对多关系,子表数据随主表一起增删改。 订单与订单明细
计算类型 公式字段 基于其他字段的值通过公式自动计算得出,只读。 总价 = 单价 × 数量
系统类型 主键ID 系统自动生成的唯一标识符,通常为GUID或自增整数。 每条记录的唯一标识

三、字段属性配置

每个字段类型都有一组可配置的属性,这些属性决定了字段的行为、校验规则和UI表现。以下是通用及类型特定的关键属性:

3.1 通用属性

  • 字段名称:在代码和API中使用的唯一标识符(如 customerName)。
  • 显示名称:在用户界面中显示的标签(如“客户名称”)。
  • 描述/帮助文本:向用户解释字段用途的提示信息。
  • 必填:是否强制用户输入值。
  • 只读:字段值是否允许被修改。
  • 默认值:新建记录时自动填充的值。
  • 唯一性:确保该字段值在实体中不重复。
  • 索引:是否为该字段创建数据库索引以提升查询性能。
  • 布局位置:在表单或列表中的显示顺序和分组。

3.2 类型特定属性

文本类字段:

  • 最大长度:限制字符数。
  • 正则校验:如邮箱格式、手机号格式。
  • 大小写:是否自动转换(大写/小写/首字母大写)。

数字类字段:

  • 精度:小数位数(如2位小数)。
  • 取值范围:最小值/最大值。
  • 单位:显示在数值后的单位文本(如“元”、“个”)。
  • 千分位分隔符:是否显示逗号。

选择类字段:

  • 选项列表:静态定义或从其他实体动态加载。
  • 多选模式:是否允许选择多个值。
  • 颜色/图标:为选项配置视觉标识(如状态标签的颜色)。

日期时间类字段:

  • 显示格式:如 YYYY-MM-DDDD/MM/YYYY
  • 时区:是否跟随用户时区。
  • 自动填充:如“创建时自动填入当前时间”。

关系类字段:

  • 关联实体:指定目标实体。
  • 关系类型:一对一、一对多、多对多。
  • 级联操作:删除主记录时是否同时删除关联记录(级联删除)。
  • 显示字段:在关联下拉中显示目标实体的哪个字段(如显示“客户名称”而非ID)。

文件类字段:

  • 允许的文件类型:如 .jpg, .pdf, .docx
  • 最大文件大小:以MB为单位。
  • 上传数量限制:单个字段允许上传的文件个数。

3.3 高级配置示例

以下是一个“订单”实体中“订单金额”字段的典型配置:

字段名称: orderAmount
显示名称: 订单金额
类型: 数字
属性:
  精度: 2
  最小值: 0
  最大值: 9999999.99
  单位: 元
  必填: true
  只读: false
  默认值: 0.00
  索引: true
  校验规则: 必须大于0

通过合理配置字段属性,低代码平台可以在不编写代码的情况下,实现复杂的数据校验、自动计算和用户交互逻辑,这是低代码开发效率的核心体现。