Procházet zdrojové kódy

fix 模块自动绑定

yxh před 3 roky
rodič
revize
393b61da29

+ 1 - 1
internal/app/system/router/router.go

@@ -48,7 +48,7 @@ func (router *Router) BindController(ctx context.Context, group *ghttp.RouterGro
 			controller.Cache, // 缓存处理
 			controller.Cache, // 缓存处理
 		)
 		)
 		//自动绑定定义的控制器
 		//自动绑定定义的控制器
-		if err := libRouter.RouterAutoBind(router, ctx, group); err != nil {
+		if err := libRouter.RouterAutoBind(ctx, router, group); err != nil {
 			panic(err)
 			panic(err)
 		}
 		}
 	})
 	})

+ 5 - 0
internal/router/router.go

@@ -13,6 +13,7 @@ import (
 	commonRouter "github.com/tiger1103/gfast/v3/internal/app/common/router"
 	commonRouter "github.com/tiger1103/gfast/v3/internal/app/common/router"
 	commonService "github.com/tiger1103/gfast/v3/internal/app/common/service"
 	commonService "github.com/tiger1103/gfast/v3/internal/app/common/service"
 	systemRouter "github.com/tiger1103/gfast/v3/internal/app/system/router"
 	systemRouter "github.com/tiger1103/gfast/v3/internal/app/system/router"
+	"github.com/tiger1103/gfast/v3/library/libRouter"
 )
 )
 
 
 var R = new(Router)
 var R = new(Router)
@@ -28,5 +29,9 @@ func (router *Router) BindController(ctx context.Context, group *ghttp.RouterGro
 		systemRouter.R.BindController(ctx, group)
 		systemRouter.R.BindController(ctx, group)
 		// 绑定公共路由
 		// 绑定公共路由
 		commonRouter.R.BindController(ctx, group)
 		commonRouter.R.BindController(ctx, group)
+		//自动绑定定义的模块
+		if err := libRouter.RouterAutoBind(ctx, router, group); err != nil {
+			panic(err)
+		}
 	})
 	})
 }
 }

+ 1 - 1
library/libRouter/router.go

@@ -17,7 +17,7 @@ import (
 
 
 // RouterAutoBind 收集需要被绑定的控制器,自动绑定
 // RouterAutoBind 收集需要被绑定的控制器,自动绑定
 // 路由的方法命名规则必须为:BindXXXController
 // 路由的方法命名规则必须为:BindXXXController
-func RouterAutoBind(R interface{}, ctx context.Context, group *ghttp.RouterGroup) (err error) {
+func RouterAutoBind(ctx context.Context, R interface{}, group *ghttp.RouterGroup) (err error) {
 	//TypeOf会返回目标数据的类型,比如int/float/struct/指针等
 	//TypeOf会返回目标数据的类型,比如int/float/struct/指针等
 	typ := reflect.TypeOf(R)
 	typ := reflect.TypeOf(R)
 	//ValueOf返回目标数据的的值
 	//ValueOf返回目标数据的的值