cg33 6 vuotta sitten
commit
5f10eb9cb4
6 muutettua tiedostoa jossa 85 lisäystä ja 0 poistoa
  1. 3 0
      .gitignore
  2. 1 0
      README.md
  3. BIN
      admin.db
  4. 20 0
      config.json
  5. 9 0
      go.mod
  6. 52 0
      main.go

+ 3 - 0
.gitignore

@@ -0,0 +1,3 @@
+.idea
+build
+go.sum

+ 1 - 0
README.md

@@ -0,0 +1 @@
+# go-admin example

BIN
admin.db


+ 20 - 0
config.json

@@ -0,0 +1,20 @@
+{
+  "database": {
+    "default": {
+      "max_idle_con": 50,
+      "max_open_con": 150,
+      "file": "./admin.db",
+      "driver": "sqlite"
+    }
+  },
+  "domain": "localhost",
+  "prefix": "admin",
+  "store": {
+    "path": "./uploads",
+    "prefix": "uploads"
+  },
+  "language": "cn",
+  "index": "/",
+  "debug": true,
+  "color_scheme": "skin-black"
+}

+ 9 - 0
go.mod

@@ -0,0 +1,9 @@
+module github.com/GoAdminGroup/example
+
+go 1.12
+
+require (
+	github.com/chenhg5/go-admin v0.0.14 // indirect
+	github.com/chenhg5/go-admin/modules/db v0.0.0-20190924094730-ed85f68cb817 // indirect
+	github.com/gin-gonic/gin v1.4.0 // indirect
+)

+ 52 - 0
main.go

@@ -0,0 +1,52 @@
+package main
+
+import (
+	_ "github.com/chenhg5/go-admin/adapter/gin"
+	"github.com/chenhg5/go-admin/engine"
+	"github.com/chenhg5/go-admin/examples/datamodel"
+	"github.com/chenhg5/go-admin/plugins/admin"
+	"github.com/chenhg5/go-admin/plugins/example"
+	"github.com/chenhg5/go-admin/template/types"
+	"github.com/gin-gonic/gin"
+	"io/ioutil"
+)
+
+func main() {
+	r := gin.Default()
+
+	gin.SetMode(gin.ReleaseMode)
+	gin.DefaultWriter = ioutil.Discard
+
+	eng := engine.Default()
+
+	adminPlugin := admin.NewAdmin(datamodel.Generators)
+
+	// add generator, first parameter is the url prefix of table when visit.
+	// example:
+	//
+	// "user" => http://localhost:9033/admin/info/user
+	//
+	adminPlugin.AddGenerator("user", datamodel.GetUserTable)
+
+	// customize a plugin
+
+	examplePlugin := example.NewExample()
+
+	if err := eng.AddConfigFromJson("./config.json").
+		AddPlugins(adminPlugin, examplePlugin).
+		Use(r); err != nil {
+		panic(err)
+	}
+
+	r.Static("/uploads", "./uploads")
+
+	// customize your pages
+
+	r.GET("/admin/custom", func(ctx *gin.Context) {
+		engine.Content(ctx, func() types.Panel {
+			return datamodel.GetContent()
+		})
+	})
+
+	_ = r.Run(":9033")
+}