1.选型
1.1 web框架:iris。结构合理,示例多,文档丰富。
1.2 orm:gorm。model struct 生成使用xorm。
目前比较看好的还有https://github.com/facebook/ent,就是暂时还不完善。

2.设计具体的代码结构
image.png

3.代码分层
image.png
遵循CQRS原则,repo负责query,cmd移到下层的models中去。

4.实现商品详情接口
4.1 api/main.go
image.png

4.2 api/routes/routes.go
image.png

4.3 api/controllers/product/view.go
image.png

4.4 v2/service/product.go
image.png

4.5 v2/repo/product.go
image.png

4.6 v2/models/product.go
image.png

5.运行效果
image.png