>[danger] 友情提示:命令行目前只支持HisiPHP Pro版本([我要升级](https://www.hisiphp.com/authorize.html)) >[info]特别提醒:以下建表规则,仅适用于一键CRUD指令。如需手动创建增删改查请跳过此章节。 首先选择你喜欢的数据库管理工具创建一张表,一定要写上表注释(用于菜单名称显示)。 然后创建字段,必须按以下规则进行字段的类型设置和注释,使用`php think crud 表名`指令生成数据表的增删改查时会自动生成对应的表单项和数据列表。 >[warning] 字段命名规范:使用小写,如果有多个单词请使用下划线分割。 ## 字段注释约束 >[info] 注释格式:字段标题 | [表单类型] | [显示控制] | [选项值] 上面的注释格式除了`字段标题`为必须,其他都是可选 `表单类型`其实就是表单构建器里面的[表单项](添加表单项.md),参考示例:文章简介|textarea `显示控制`是用于控制当前字段的显示位置,位置格式:表格列+表单页+表格过滤器,默认值:110(1显示,0隐藏),一个数字代表一个位置。 `选项值`当表单类型为select、checkbox、radio时,建议设置,示例:北京,上海,广州,深圳。**如果当前字段为关联外键,可忽略此设置**。 ## 字段类型约束 >[info]此约束为系统默认,非强制性,你可以通过修改字段注释里面的**表单类型**来覆盖。 | 字段类型 | 默认对应表单类型 | | --- | --- | | varchar | 文本框:text | | int | 文本框:text | | date | 日期选择器:date | | datetime | 日期选择器:datetime | | timestamp | 日期选择器:datetime | | time | 日期选择器:time | | year | 日期选择器:year | ## 特殊字段 | 字段类型 | 说明 | | --- | --- | | create_time | 记录创建时间,默认不会出现在表单里面,会出现在表格列 | | update_time | 记录修改时间,默认不会出现在表单里面,也不会出现在表格列 | | delete_time | 记录删除时间,当表含有此字段时,默认启用软删除功能| 文章分类Sql示例: ``` CREATE TABLE `hisi_test_category` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL DEFAULT '' COMMENT '分类名称', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='分类'; ``` 文章数据Sql示例: ``` CREATE TABLE `hisi_test_article` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `cid` int(11) NOT NULL COMMENT '文章分类|111', `title` varchar(200) NOT NULL DEFAULT '' COMMENT '文章标题|111', `tag` varchar(50) NOT NULL DEFAULT '' COMMENT '文章标签|tag', `xiala` varchar(10) NOT NULL DEFAULT 'cq' COMMENT '下拉框|select|110|bj:北京,gd:广东,cq:重庆', `detail` longtext COMMENT '文章内容|editor', `image` varchar(200) DEFAULT '' COMMENT '文章封面|image', `images` text COMMENT '文章相册|images', `hidden` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '隐藏域|hidden|000', `password` varchar(10) NOT NULL DEFAULT '' COMMENT '密码框|password|010', `textarea` text COMMENT '文本框|textarea|010', `file` varchar(200) DEFAULT '' COMMENT '单文件|file|010', `files` varchar(200) DEFAULT '' COMMENT '多文件|files|010', `switch` tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '开关|switch|010', `radio` int(10) unsigned NOT NULL DEFAULT '1' COMMENT '单选|radio|111|川菜,湘菜,粤菜', `checkbox_ids` varchar(50) DEFAULT '' COMMENT '多选|checkbox|110|张三,李四,王五', `datetime` datetime DEFAULT NULL COMMENT '日期时间', `timestamp` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '时间戳|datetime', `date` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '日期|date', `time` time DEFAULT NULL COMMENT '时间', `diy_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '自定义时间|time', `slider` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '滑块|slider', `rate` decimal(8,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '评分|rate', `create_time` int(10) unsigned DEFAULT '0' COMMENT '创建时间|10', `update_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '修改时间|10', `delete_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '删除时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='文章'; ```