当项目比较大时有必要对控制器进行分组
package admin
import "github.com/gin-gonic/gin"
type UserController struct {
BaseController
}
func (con UserController) Index(c *gin.Context) {
//c.String(200, "用户列表")
con.success(c)
}
func (con UserController) Edit(c *gin.Context) {
c.String(200, "用户列表-edit")
}
func (con UserController) Add(c *gin.Context) {
c.String(200, "用户列表-add")
}
package admin
import "github.com/gin-gonic/gin"
type ArticleController struct {
BaseController
}
func (con ArticleController) Index(c *gin.Context) {
//c.String(200, "文章列表")
con.success(c)
}
func (con ArticleController) Edit(c *gin.Context) {
c.String(200, "文章列表-edit")
}
func (con ArticleController) Add(c *gin.Context) {
c.String(200, "文章列表-add")
}
package routers
import (
"gindemo06/controllers/admin"
"github.com/gin-gonic/gin"
)
func AdminRoutersInit(r *gin.Engine) {
adminRouters := r.Group("/admin")
{
adminRouters.GET("/user", admin.UserController{}.Index)
adminRouters.GET("/user/edit", admin.UserController{}.Edit)
adminRouters.GET("/user/add", admin.UserController{}.Add)
adminRouters.GET("/article", admin.ArticleController{}.Index)
adminRouters.GET("/article/add", admin.ArticleController{}.Add)
adminRouters.GET("/article/delete", admin.ArticleController{}.Edit)
}
}
package admin
import "github.com/gin-gonic/gin"
type BaseController struct{}
func (con BaseController) success(c *gin.Context) {
c.String(200, "成功")
}
func (con BaseController) error(c *gin.Context) {
c.String(200, "失败")
}