模型
指南
hade model 提供了自动生成数据库模型的命令行工具,如果你已经定义好你的model,这里的系列工具能帮助你节省不少时间。
> ./hade model
数据库模型相关的命令
Usage:
hade model [flags]
hade model [command]
Available Commands:
api 通过数据库生成api
gen 生成模型
test 测试数据库
Flags:
-h, --help help for model
包含三个命令:
- ./hade model api 通过数据表自动生成api代码
- ./hade model gen 通过数据表自动生成model代码
- ./hade model test 测试某个数据库是否可以连接
./hade model test
当你想测试下你的某个配置好的数据库是否能连接上,都有哪些表的时候,这个命令能帮助你。
> ./hade model test --database="database.default"
数据库连接:database.default成功
一共存在1张表
student
./hade model gen
这个命令帮助你生成数据表对应的gorm的model
✘ ~/Documents/workspace/gohade/hade feature/model-gen ● ./hade model gen
Error: required flag(s) "output" not set
Usage:
hade model gen [flags]
Flags:
-d, --database string 模型连接的数据库 (default "database.default")
-h, --help help for gen
-o, --output string 模型输出地址
其中接受两个参数:
database: 这个参数可选,用来表示模型连接的数据库配置地址,默认是database.default,表示config目录下的{env}目录下的database.yaml中的default配置。
output:这个参数必填,用来表示模型文件的输出地址,如果填写相对路径,会在前面填充当前执行路径来补充为绝对路径。
使用方式
第一步,使用 ./hade model gen --output=app/model
选择其中的两个表,answers和questions,提示目录文件
下一步确认y继续
最后生成模型成功
查看文件,确实生成了model
./hade model api
> ./hade model api --database=database.default --output=/Users/jianfengye/Documents/workspace/gohade/hade/app/http/module/student/
它会在目标文件夹中生成对这个数据表的5个接口文件
- gen_[table]_api_create.go
- gen_[table]_api_delete.go
- gen_[table]_api_list.go
- gen_[table]_api_show.go
- gen_[table]_api_update.go
还有另外两个文件
- gen_[table]_model.go // 数据表对应的模型结构
- gen_[table]_router.go // 5个接口对应的默认路由
这里的每个文件都是可以修改的。
但是注意,如果重新生成,会覆盖原先的文件。
执行命令的时候切记保存已经改动的代码文件。