golang,go,博客,开源,编程
你是不是曾经想用 Go 写个后台系统,结果一不小心就写成了 Bug 系统?
是不是写到权限控制的时候,感觉自己变成了权限受害者?
是不是本来想安安心心做个 CRUD 工人,结果被前端 UI 折磨到怀疑人生?
别怕,GoAdmin 来拯救你了!
简单说,GoAdmin 就是 Go 语言界的“万能后台神器”。
它能帮你:
只要你写几行代码,把 GoAdmin 挂在你心爱的 Gin 路由上,然后配置一下数据库,后台系统就啪地一下出来了,快得很。
eng := engine.Default()
eng.AddConfig(cfg).AddPlugins(admin.NewAdmin()).Use(router)
这不是代码,这是开挂。
package main
import (
"github.com/GoAdminGroup/go-admin/engine"
"github.com/GoAdminGroup/go-admin/adapter/gin"
_ "github.com/GoAdminGroup/go-admin/modules/db/drivers/mysql"
"github.com/GoAdminGroup/go-admin/modules/config"
"github.com/GoAdminGroup/go-admin/plugins/admin"
"github.com/GoAdminGroup/go-admin/template"
"github.com/GoAdminGroup/go-admin/template/chartjs"
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
eng := engine.Default()
template.AddComp(chartjs.NewChart())
cfg := config.Config{
Databases: config.DatabaseList{
"default": {
Host: "127.0.0.1",
Port: "3306",
User: "root",
Pwd: "password",
Name: "test",
Driver: "mysql",
},
},
UrlPrefix: "admin",
Store: config.Store{
Path: "./uploads",
Prefix: "uploads",
},
Language: "zh-CN",
Debug: true,
}
adminPlugin := admin.NewAdmin()
if err := eng.AddConfig(cfg).AddPlugins(adminPlugin).Use(r); err != nil {
panic(err)
}
r.Run(":9033")
}
技能 | 效果 |
---|---|
多数据库通吃 | MySQL、PostgreSQL、SQLite、SQLServer,来者不拒 |
权限控制 | 多角色多权限,不怕甲方让你做个 10 层嵌套权限树 |
插件系统 | 图表、文件管理、数据统计,像装饰圣诞树一样装功能 |
嵌入式能力 | 可以像寄生虫一样潜伏到任何 Go Web 框架里(说错了,是无缝集成) |
国际化支持 | 支持中英文,连你爸妈都能看得懂你写的系统 |
如果你是 Go 语言玩家,GoAdmin 就是你做后台的终极武器:
"不用写 HTML,也不用调 CSS,点点配置、接口一丢,页面自动送上来。"
有了 GoAdmin,写后台不再是枯燥无味的体力活,而是一种优雅高效的享受!
—— 甚至可以边喝奶茶边上线!