go-admin

遗失的Golang编写的数据可视化与管理平台构建框架

Go Report Card Go Report Card golang telegram qq群 GoDoc license

前言

GoAdmin 可以帮助你的golang应用快速实现数据可视化,搭建一个数据管理平台。

特征

  • 🚀 高生产效率: 10分钟内做一个好看的管理后台
  • 🎨 主题: 默认为adminlte,更多好看的主题正在制作中,欢迎给我们留言
  • 🔢 插件化: 提供插件使用,真正实现一个插件解决不了问题,那就两个
  • 认证: 开箱即用的rbac认证系统
  • ⚙️ 框架支持: 支持大部分框架接入,让你更容易去上手和扩展

翻译

谁在使用GoAdmin

使用

通过以下三步运行:

第一步:导入 sql

第二步:创建 main.go

package main

import (
	"github.com/gin-gonic/gin"
	_ "github.com/GoAdminGroup/go-admin/adapter/gin"
	_ "github.com/GoAdminGroup/go-admin/modules/db/drivers/mysql"
	"github.com/GoAdminGroup/go-admin/engine"
	"github.com/GoAdminGroup/go-admin/plugins/admin"
	"github.com/GoAdminGroup/themes/adminlte"
	"github.com/GoAdminGroup/go-admin/modules/config"
	"github.com/GoAdminGroup/go-admin/template"
    	"github.com/GoAdminGroup/go-admin/template/chartjs"
    	"github.com/GoAdminGroup/go-admin/template/types"
	"github.com/GoAdminGroup/go-admin/examples/datamodel"
	"github.com/GoAdminGroup/go-admin/modules/language"
)

func main() {
	r := gin.Default()

	eng := engine.Default()

	// global config
	cfg := config.Config{
		Databases: config.DatabaseList{
		    "default": {
			Host:         "127.0.0.1",
			Port:         "3306",
			User:         "root",
			Pwd:          "root",
			Name:         "goadmin",
			MaxIdleCon: 50,
			MaxOpenCon: 150,
			Driver:       "mysql",
		    },
        	},
		UrlPrefix: "admin",
		// STORE 必须设置且保证有写权限,否则增加不了新的管理员用户
		Store: config.Store{
		    Path:   "./uploads",
		    Prefix: "uploads",
		},
		Language: language.CN, 
		// 开发模式
                Debug: true,
                // 日志文件位置,需为绝对路径
                InfoLogPath: "/var/logs/info.log",
                AccessLogPath: "/var/logs/access.log",
                ErrorLogPath: "/var/logs/error.log",
                ColorScheme: adminlte.ColorschemeSkinBlack,
	}

	// 增加 chartjs 组件
	template.AddComp(chartjs.NewChart())
    
    	_ = eng.AddConfig(cfg).
    		AddGenerators(datamodel.Generators).
    	        // 增加 generator, 第一个参数是对应的访问路由前缀
        	        // 例子:
        	        //
        	        // "user" => http://localhost:9033/admin/info/user
        	        //		
    		AddGenerator("user", datamodel.GetUserTable).
    		Use(r)
    	
    	// 自定义首页
    	eng.HTML("GET", "/admin", datamodel.GetContent)

	_ = r.Run(":9033")
}

第三步:运行

账号: admin 密码: admin

更多细节详见 文档说明

贡献

非常欢迎提pr,这里可以加入开发小组

QQ群:756664859,记得备注加群来意

十分感谢

打赏

留下您的github/gitee用户名,我们将会展示在捐赠名单中。