zero-models 是一个基于 go-zero 的数据库模型生成工具集。它通过集成定制化的
goctl 模板和自动化脚本,旨在简化 Golang 项目中 MySQL 模型层的开发流程,提高代码生成效率和一致性。
- 自动化生成脚本:提供
gen_model.sh.脚本,支持一键生成标准模型或带缓存的模型。 - 自动依赖注入:脚本会自动将生成的模型代码中的占位符替换为指定的工具包依赖(默认使用
zero-doraemon)。 - 内置二进制工具:项目内集成了对应版本的
goctl二进制文件,确保环境一致性。
- 操作系统:macOS (脚本目前主要支持 macOS)
- 开发语言:Go
- 数据库:MySQL
在项目根目录下,复制 gen_model.sh.local 脚本:
cp gen_model.sh.local gen_model.sh
chmod +x gen_model.sh在使用脚本之前,需要修改 gen_model.sh 脚本中的数据库相关配置部分,填入你的 MySQL 数据库连接信息:
# ---------- 数据库相关配置 ----------> start
DB_Host=127.0.0.1
DB_Port=3306
DB_Name=your_database_name
DB_Username=root
DB_Password=your_password
# ---------- 数据库相关配置 ----------> end- 生成标准模型文件
./gen_model.sh model <table_name>
# 示例:./gen_model.sh model users- 生成带缓存的模型文件(不自定义缓存前缀)
./gen_model.sh modelc <table_name> [cache_prefix]
# 示例:./gen_model.sh modelc users- 生成带缓存的模型文件(自定义缓存前缀)
./gen_model.sh modelc <table_name> [cache_prefix]
# 示例:./gen_model.sh modelc users "api:cache"