>[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='文章';
```
- 序言
- 环境配置
- 下载及安装
- 目录结构
- 系统配置
- 多语言
- 命令行(pro版)
- 自动生成模块或插件(build)
- 生成模块
- 生成插件
- 自动生成增删改查(crud)
- 第一步:创建数据表
- 第二步:使用crud指令生成
- 自动生成类库文件(make)
- 生成控制器文件(make:controller)
- 生成模型文件(make:model)
- 生成逻辑文件(make:logic)
- 生成服务文件(make:service)
- 生成验证器文件(make:validate)
- 构建器(pro版)
- 表单构建器(form)
- 表单属性设置
- 添加表单项
- 文本框(text)
- 隐藏域(hidden)
- 密码框(password)
- 文本域(textarea)
- 单文件(file)
- 多文件(files)
- 单图(image)
- 多图(images)
- 开关(switch)
- 单选(radio)
- 多选(checkbox)
- 下拉框(select)
- 标签(tag)
- 日期时间(datetime)
- 颜色选择器(color)
- 富文本编辑器(editor)
- 滑块(slider)
- 评分(rate)
- 穿梭框(transfer)
- 进度条(progress)
- 树形(tree)
- 联动(linkage)
- 自定义html(html)
- 分隔线(line)
- 文字(txt)
- 下拉框增强版(select+)
- 数据表格(table)
- 添加表单分组(group)
- 栅格布局(grid)
- 触发器(trigger)
- 通用上传方法
- 表格构建器(table)
- 表格基础配置
- 添加表头工具栏
- 添加表格筛选
- 页面提示(pageTips)
- 引入 JS 文件
- 引入 CSS 文件
- 渲染额外 JS 代码
- 渲染额外 CSS 代码
- 模块开发
- 1.生成模块
- 2.创建菜单
- 3.创建控制器
- 后台通用方法
- 插件开发
- 1.新建插件
- 2.插件配置
- 3.插件控制器
- 4.插件模板
- 5.插件钩子
- 模板替换变量
- 公共函数库
- 后台通用JS方法
- 常见问题
- 官方模块
- CMS内容管理模块
- 目录结构
- 模板标签
- API接口
- 栏目页/内容页
- 小程序发布
- 官方插件
- 第三方登录
- excel插件
- 万能采集
- 采集规则
- 采集内容