https://github.com/werbenhu/gin-ctrl-mgr
https://github.com/werbenhu/gin-ctrl-mgr
Last synced: 8 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/werbenhu/gin-ctrl-mgr
- Owner: werbenhu
- Created: 2024-11-06T15:20:28.000Z (11 months ago)
- Default Branch: master
- Last Pushed: 2024-12-23T02:42:02.000Z (10 months ago)
- Last Synced: 2024-12-23T03:25:03.884Z (10 months ago)
- Language: Go
- Size: 7.81 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
## Gin 层级控制器-路由
### 简介
这是一个基于Gin框架的控制器层级路由管理的Demo,支持多层控制器嵌套,提供灵活的路由注册机制。
### 功能特点
- 支持控制器(路由)的层级嵌套
- 全局路由注册表
- 支持路由组### 示例结构
系统包含三层控制器示例:
```
/api/father -> FatherController(父控制器)
/son -> SonController(子控制器)
/grandson -> GrandsonController(孙控制器)
```### 快速开始
1. 创建控制器
```go
type YourController struct {
*BaseController
}func NewYourController() *YourController {
return &YourController{
BaseController: NewBaseController(),
}
}func (y *YourController) Init(router gin.IRouter) {
y.BaseController.Init(router)
router.GET("/hello", y.Hello)
}
```2. 注册控制器
```go
func init() {
Register("/api/your-path", NewYourController())
}
```3. 启动应用
```go
func main() {
engine := gin.Default()
manager := controller.NewControllerManager(engine)
manager.Init()
engine.Run(":8080")
}
```