Workits toolx是用于搭建、开发Workits项目的命令行工具。包括: 创建项目create
、添加模块new
、根据数据库表生成功能代码gen
、运行(支持热加载)run
...
查看示例项目
安装
go install gitee.com/workits/pkgs/toolx/cmd/wk
命令行
create
: 创建项目
wk create ${项目名称}
new
: 创建模块
wk new ${模块名称}
gen
: 根据数据库表生成代码
wk gen -m ${模块名称} -t ${数据库表名} -c {数据库表注释}
- 项目根目录下执行
-c
参数在sqlite
数据库时必填, 其他数据库选填
run
: 项目运行(支持热加载)
wk run
install
: 安装全局环境
wk install
- 任意目录可执行
- 一般情况下不需要单独安装, 首次执行
create
命令会自动安装环境
- 若已安装过, 可通过该命令更新全局模板
init
: 初始化项目环境
wk init
- 项目根目录下执行
- 若下载的新项目没有
.workits
目录,可通过该命令初始化
- 若项目已具备命令行环境, 可通过该命令同步全局环境的模板
config
: 重新配置项目基本信息
wk config
version
: 查看版本信息
wk version
项目结构
go.mod
main.go
component ----------------- 该目录下的文件自动生成
|-- component.go
|-- server_component.go --- 该文件可自行添加更多的中间件
config -------------------- 配置文件, 自动生成, 可根据业务需求进行添加
|-- application.yaml
|-- casbin.yaml
|-- jwt.yaml
|-- server.yaml
docs ---------------------- 该目录下的文件可通过 swag init --parseDependency 生成
|-- docs.go
internal
|-- app ------------------- 该目录下存放各个模块
| |-- demo -------------- demo模块
| |-- component ----- 该目录下的文件自动生成, 无需修改
| | |-- router
| | |-- hello_router.go
| | |-- router.go
| |-- entity -------- 该目录下的文件自动生成, 根据业务逻辑自行修改
| |-- handler ------- 该目录下的文件自动生成, 根据业务逻辑自行修改
| | |-- hello_handler.go
| |-- model --------- 该目录下的文件自动生成, 根据业务逻辑自行修改
| |-- hello_model.go
|-- component ------------- 该目录下的文件自动生成
| |-- router
| |-- demo_router.go
| |-- router.go
|-- config ---------------- 配置文件对应的结构体
| |-- application_config.go
| |-- casbin_config.go
| |-- global.go ----- 该文件自动生成, 不要修改
| |-- jwt_config.go
| |-- server_config.go