在一個項目中,我們會有很多路由,那么我們該如何更好的管理自己的路由,在多人協同的情況下可以更好的規范路由呢,我來說一下自己的做法
1.承接gin框架初識(先跑一個簡單demo) ①,先創建一個controller文件夾,再創建子文件夾及go文件,如下:

2.每個go文件的代碼如下:
project->index.go:
package main import ( c "project/controller" "github.com/gin-gonic/gin" ) func main() { r := gin.Default() rr := c.GinRouter(r) // 監聽並在 0.0.0.0:8080 上啟動服務 rr.Run(":8080") }
project->controller->index.go:
package controller import ( "fmt" "project/controller/forth" "project/controller/second" "project/controller/third" "github.com/gin-gonic/gin" ) func GinRouter(r *gin.Engine) *gin.Engine { rr := r.Group("/") rr.GET("/first", func(c *gin.Context) { fmt.Println("first .........") }) rr = r.Group("/a") second.Routers(rr) third.Routers(rr) forth.Routers(rr) return r }
project->controller->second->index.go:
package second import ( "fmt" "github.com/gin-gonic/gin" ) func Routers(r *gin.RouterGroup) { rr := r.Group("") rr.POST("/second", Function) return } func Function(c *gin.Context) { fmt.Println("second .........") return }
project->controller->third->index.go:
package third import ( "fmt" "github.com/gin-gonic/gin" ) func Routers(r *gin.RouterGroup) { rr := r.Group("") rr.POST("/third", Function) return } func Function(c *gin.Context) { fmt.Println("third .........") return }
project->controller->forth->index.go:
package forth import ( "fmt" "github.com/gin-gonic/gin" ) func Routers(r *gin.RouterGroup) { rr := r.Group("") rr.POST("/forth", Function1) rr.POST("/five", Function2) return } func Function1(c *gin.Context) { fmt.Println("forth .........") return } func Function2(c *gin.Context) { fmt.Println("five .........") return }
3.執行一下代碼:

這樣的寫法能夠保證,在多人協作的情況下,代碼的合並不會出現很大的問題,而且路由管理也相方便。
