gf
gf copied to clipboard
feat(cmd/gf): improve and enhance gen ctrl
介绍
有时候某些项目没有达到要使用大仓模式的程度,使用单仓便可以完成业务。
但是gf gen ctrl 只能支持 module/version 这种目录,譬如 user/v1,像api/app/user/v1,api/admin/admin/v1 这种接口便无能为力。
本PR改进了生成模式,现在使其可以更灵活的生成控制器,包括多级目录生成。
例子
在 api 下定义了 app 和 admin 两个模块,其中 app 下又定义了 /user/v1 和 /user/user_ext/v1,最后生成如红框所示:
这是一个复杂的例子,用来检测代码的健壮性。
在真实的项目中,应该类似 api/app/user/v1,api/app/user_ext/v1。
其他
- 规范了一些测试用例,譬如本来的测试文件放在
/testdata/genctrl和/testdata/genctrl-merge中,现在更改为/testdata/genctrl/default和/testdata/genctrl/merge; - 替换掉废弃的方法
gfile.Remove。
增进来源:Issue和官网评论
求改一下gen pb 目前只生成controller到一个文件
有机会合并吗,挺需要这个功能的