Skip to content

Commit 5429070

Browse files
author
piexlmax
committed
调整插件模板位置
1 parent 1e880ec commit 5429070

File tree

3 files changed

+33
-34
lines changed

3 files changed

+33
-34
lines changed

server/initialize/plugin.go

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@ package initialize
22

33
import (
44
"github.com/flipped-aurora/gin-vue-admin/server/global"
5-
email "github.com/flipped-aurora/gva-plugins/email" // 在线仓库模式go
6-
//"github.com/flipped-aurora/gin-vue-admin/server/plugin/email" // 本地插件仓库地址模式
7-
"github.com/flipped-aurora/gin-vue-admin/server/plugin/example_plugin"
5+
"github.com/flipped-aurora/gin-vue-admin/server/plugin/email"
86
"github.com/flipped-aurora/gin-vue-admin/server/utils/plugin"
97
"github.com/gin-gonic/gin"
108
)
@@ -17,10 +15,6 @@ func PluginInit(group *gin.RouterGroup, Plugin ...plugin.Plugin) {
1715
}
1816

1917
func InstallPlugin(PublicGroup *gin.RouterGroup, PrivateGroup *gin.RouterGroup) {
20-
// 添加开放权限的插件 示例
21-
PluginInit(PublicGroup,
22-
example_plugin.ExamplePlugin)
23-
2418
// 添加跟角色挂钩权限的插件 示例 本地示例模式于在线仓库模式注意上方的import 可以自行切换 效果相同
2519
PluginInit(PrivateGroup, email.CreateEmailPlug(
2620
global.GVA_CONFIG.Email.To,

server/plugin/example_plugin/main.go

Lines changed: 0 additions & 27 deletions
This file was deleted.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
package example_plugin
2+
3+
// 我们为您准备了一个需要提供api的插件模板 您只需要按照此模板注册路由即可 插件使用请把此包放置在plugin下
4+
import (
5+
"github.com/gin-gonic/gin"
6+
)
7+
8+
var ExamplePlugin = new(pluginExample)
9+
10+
type pluginExample struct{}
11+
12+
func NewPluginExample() *pluginExample {
13+
// 此处为注册生命周期 可以在此处写初始化内容
14+
return &pluginExample{}
15+
}
16+
17+
func (*pluginExample) Register(group *gin.RouterGroup) {
18+
//如需细分权限 可以在此处use中间件 gva项目包名已改为github模式
19+
//所以整个plugin可以直接独立到外层开启为新的项目 然后用包的形式导入也是可以完整运行的
20+
21+
group.GET("hello",
22+
func(context *gin.Context) {
23+
// 此处请填写handle函数
24+
// 您依然可以模仿gva分层进行插件制作 当然您也可以按照您所习惯的分层模式开发
25+
context.JSON(200, "hello world")
26+
})
27+
}
28+
29+
func (*pluginExample) RouterPath() string {
30+
// 此处为您插件的总路由path 录入本插件安装进入项目后 会自动产生路由 /[主项目跟路由(如果有的话)]/group/xxxx
31+
return "group"
32+
}

0 commit comments

Comments
 (0)