使用[GORM](https://github.com/go-gorm/gorm)作为数据库底层模型驱动
### 功能概览
- 支持主流关系型数据库 MySQL/SQLite/SQL Server/PostgreSQL
- 全功能 ORM (无限接近)
- 模型关联 (Has One, Has Many, Belongs To, Many To Many, 多态)
- 钩子函数 Hook (在创建 / 保存 / 更新 / 删除 / 查找之前或之后)
- 预加载
- 事务
- 复合主键
- SQL 生成器
- 数据库自动迁移
- 自定义日志
- 可扩展性,可基于 GORM 回调编写插件
- 全测试覆盖
## 配置文件定义
使用数据库之前,必须在`.env`文件中配置数据库连接信息,数据库支持`MySQL`和`SQLite`
```
#数据库配置
DB_CONNECTION=mysql
#数据库地址
DB_HOST=127.0.0.1
#数据库端口
DB_PORT=3306
#数据库名称
DB_DATABASE=
#数据库用户名
DB_USERNAME=
#数据库密码
DB_PASSWORD=
#表前缀
DB_TABLE_PREFIX=shop_
#设置空闲连接池中连接的最大数量
DB_MAX_IDLE_CONNECTIONS=100
#设置打开数据库连接的最大数量
DB_MAX_OPEN_CONNECTIONS=100
DB_DEBUG=2
```
- 序言
- 基础
- 安装GoHub
- 目录结构
- 开发规范
- 部署项目
- 架构
- 架构总览
- 生命周期
- 配置
- 配置介绍
- 配置目录
- 配置格式
- 配置加载
- 读取配置
- 动态配置
- 环境变量配置
- 路由
- 路由模式
- 路由定义
- 路由参数
- 路由分组
- 路由限流
- 路由拆分
- 控制器
- 控制定义
- 控制器初始化
- 中间件
- Make创建控制器
- 请求
- 请求信息
- 数据库
- 连接数据库
- 基本使用
- Make创建模型
- 日志
- 介绍
- 日志驱动
- 日志写入
- HTTP日志
- 数据库请求日志
- 错误和调试
- Debuger调试器
- 验证
- 验证器
- 验证规则
- Make创建验证器
- 杂项
- 缓存
- 分页
- 验证码
- CURL请求
- 命令行
- 基础知识
- console 包
- Cobra 基础
- 命令行模式
- 附录
- 配置参考
- 第三方依赖库