mirror of
https://gitlab.52pay.top/go/easygoadmin.git
synced 2025-09-26 22:47:58 +08:00
106 lines
2.8 KiB
Go
106 lines
2.8 KiB
Go
package main
|
||
|
||
import (
|
||
"fmt"
|
||
"github.com/gin-contrib/multitemplate"
|
||
"github.com/gin-gonic/gin"
|
||
widget2 "gitlab.52pay.top/go/easygoadmin/app/widget"
|
||
_ "gitlab.52pay.top/go/easygoadmin/boot"
|
||
cfg "gitlab.52pay.top/go/easygoadmin/library/cfg"
|
||
"gitlab.52pay.top/go/easygoadmin/router"
|
||
_ "gitlab.52pay.top/go/easygoadmin/router"
|
||
"html/template"
|
||
"path/filepath"
|
||
"strings"
|
||
"time"
|
||
)
|
||
|
||
func main() {
|
||
|
||
// 开始调试模式
|
||
//gin.SetMode(gin.ReleaseMode)
|
||
gin.SetMode("debug")
|
||
// 实例化配置
|
||
config := cfg.Instance()
|
||
if config == nil {
|
||
fmt.Printf("参数错误")
|
||
return
|
||
}
|
||
|
||
//router := gin.Default()
|
||
//
|
||
//// 设置静态资源路由
|
||
//router.Static("/resource", "./public/resource")
|
||
//router.StaticFile("/favicon.ico", "./public/resource/images/favicon.ico")
|
||
//router.HTMLRender = LoadTemplates("views")
|
||
//router.GET("level/index", controller.Level.Index)
|
||
//router.GET("position/index", controller.Position.Index)
|
||
router.Router.Run(":9011") // 监听并在 0.0.0.0:8080 上启动服务
|
||
}
|
||
|
||
func LoadTemplates(templatesDir string) multitemplate.Renderer {
|
||
r := multitemplate.NewRenderer()
|
||
|
||
//// 非模板嵌套
|
||
//htmls, err := filepath.Glob(templatesDir + "/*.html")
|
||
//if err != nil {
|
||
// panic(err.Error())
|
||
//}
|
||
//for _, html := range htmls {
|
||
// r.AddFromGlob(filepath.Base(html), html)
|
||
//}
|
||
|
||
// 布局模板
|
||
layouts, err := filepath.Glob(templatesDir + "/public/*.html")
|
||
if err != nil {
|
||
panic(err.Error())
|
||
}
|
||
|
||
// 嵌套的内容模板
|
||
includes, err := filepath.Glob(templatesDir + "/**/*.html")
|
||
if err != nil {
|
||
panic(err.Error())
|
||
}
|
||
|
||
// template自定义函数
|
||
funcMap := template.FuncMap{
|
||
"StringToLower": func(str string) string {
|
||
return strings.ToLower(str)
|
||
},
|
||
"date": func() string {
|
||
return time.Now().Format("2006-01-02 15:04:05.00000")
|
||
},
|
||
"widget": widget2.Widget,
|
||
"query": widget2.Query,
|
||
"add": widget2.Add,
|
||
"edit": widget2.Edit,
|
||
"delete": widget2.Delete,
|
||
"dall": widget2.Dall,
|
||
"expand": widget2.Expand,
|
||
"collapse": widget2.Collapse,
|
||
"addz": widget2.Addz,
|
||
"switch": widget2.Switch,
|
||
"select": widget2.Select,
|
||
"submit": widget2.Submit,
|
||
"icon": widget2.Icon,
|
||
"transfer": widget2.Transfer,
|
||
"upload_image": widget2.UploadImage,
|
||
"album": widget2.Album,
|
||
"item": widget2.Item,
|
||
"kindeditor": widget2.Kindeditor,
|
||
//"date": widget.Date,
|
||
"checkbox": widget2.Checkbox,
|
||
"radio": widget2.Radio,
|
||
"city": widget2.City,
|
||
}
|
||
|
||
// 将主模板,include页面,layout子模板组合成一个完整的html页面
|
||
for _, include := range includes {
|
||
files := []string{}
|
||
files = append(files, templatesDir+"/public/base.html", include)
|
||
files = append(files, layouts...)
|
||
r.AddFromFilesFuncs(filepath.Base(include), funcMap, files...)
|
||
}
|
||
return r
|
||
}
|