数据库设计规范

TIP

当前数据库设计规范参考fastadmin和BuildAdmin,在原有的基础上,实现无需代码自动根据数据库直接实现CRUD。

字段类型

类型备注CRUD 搭配点表格表单
enum枚举型自动生成单选框
setset 型自动生成复选框
date日期型自动生成日期的选择组件
year年份型自动生成年份选择组件
time时间型自动生成时间选择组件
datetime/timestamp时间日期自动生成时间日期的选择组件
decimal/double/float浮点型自动生成 Number 输入框,步长根据默认值自动计算
int/bigint/mediumint/smallint/tinyint整型自动生成 Number 输入框,步长为 1
longtext/text/mediumtext/smalltext/tinytext/bigtext文本型自动生成 textarea 文本框

字段名称

名称备注字段类型要求CRUD 搭配点
weigh权重int后台的排序字段,如果存在该字段将出现排序按钮,可上下拖动进行排序
create_time创建时间(可视化生成)int记录的添加时间字段,不需要手动维护
update_time更新时间(可视化生成)int记录的更新时间的字段,不需要手动维护
delete_time更新时间(可视化生成)int记录的删除时间的字段,不需要手动维护,需要默认为NULL

字段后缀(名称结尾)

后缀名称示例字段类型要求CRUD 搭配点
arraynamearray自动生成数组输入组件
list/select/datanamelist自动生成 select,单选
lists/selects/multiname_selects自动生成 select,多选
_iduser_id自动生成关联表远程 select,单选
_idsuser_ids自动生成关联表远程 select,多选
citycity自动生成城市选择器(需在模块市场中安装省份城市信息)
image/avatardesc_image自动生成上传图片组件,单图
images/avatarsdescimages自动生成上传图片组件,多图
fileattachfile自动生成上传文件组件,单文件
filesattachfiles自动生成上传文件组件,多文件
iconicon自动生成图标选择器
colorcolor自动生成颜色选择器(仅可视化CRUD)
number/int/numadd_num自动生成 Number 输入框,步长根据默认值自动计算
time/datetimerefreshtimeint自动创建选择时间日期的组件
textarea/multiline/rowsrowsvarchar自动生成Textarea输入框
status/state/typestatustinyint(1)/char(1)自动生成单选框
switch/togglelog_switchtinyint(1)/int/enum/char(1)自动生成开关组件,真值1代表开,假值0代表关
content/editorcontentlongtext/text/mediumtext/smalltext/tinytext/bigtext自动生成富文本编辑器

字段注释

CRUD会将字段注释表注释解析为字典

字段注释内容字段类型字段说明
status状态int将生成普通文本框
status状态enum(0,1,2)将生成单选
status状态:0=隐藏,1=正常,2=推荐enum(0,1,2)将生成单选,显示值为对应文字

将字段status注释设置为状态:0=禁用,1=启用,那么一键CRUD生成的页面如下所示。