【发布时间】:2025-12-17 02:25:02
【问题描述】:
我在两个不同的包中为gin 路由创建了两个不同的组,特别是/user 和/todo,我想将它们合并到一个文件中。这是我的userroutes.go 文件。
package userrouter
import (
"github.com/gin-gonic/gin"
)
//UserRoutes for user
func UserRoutes() *gin.RouterGroup {
r := gin.Default()
v1 := r.Group("/user")
{
v1.GET("/hello", func(c *gin.Context) {
c.JSON(200, gin.H{
"message": "pong",
})
})
}
return v1
}
和todoroutes.go 一样
package todorouter
import (
"github.com/gin-gonic/gin"
)
//TodoRoutes for creating Todo
func TodoRoutes() *gin.RouterGroup {
r := gin.Default()
v2 := r.Group("/todo")
{
v2.GET("/hello", func(c *gin.Context) {
c.JSON(200, gin.H{
"message": "pong",
})
})
}
return v2
}
然后想将它们合并到routes.go。
package router
import (
todo "TODO/api/Routes/Todo/TodoRoutes"
user "TODO/api/Routes/User/UserRoutes"
"fmt"
"github.com/gin-gonic/gin"
)
//Router for all routes
func Router() {
// r := gin.Default()
userRoutes := user.UserRoutes()
todoRoutes := todo.TodoRoutes()
}
如何将它们合并到一个文件中,以便可以使用某些前缀 /api 获取它们,例如 localhost:8081/api/user/create 或 localhost:8081/api/todo/create。另外,我是否需要在我创建的每条路线中创建r := gin.Default(),或者可以使用一次来完成?谢谢。
【问题讨论】: