mirror of
https://github.com/kataras/iris.git
synced 2025-12-17 09:57:01 +00:00
This commit is contained in:
@@ -125,12 +125,12 @@ type (
|
||||
// Right delimeter, default is }}
|
||||
Right string
|
||||
// Funcs like html/template
|
||||
Funcs template.FuncMap
|
||||
Funcs map[string]interface{}
|
||||
// Funcs like html/template
|
||||
// the difference from Funcs is that these funcs
|
||||
// can be used inside a layout and can override the predefined (yield,partial...) or add more custom funcs
|
||||
// these can override the Funcs inside no-layout templates also, use it when you know what you're doing
|
||||
LayoutFuncs template.FuncMap
|
||||
LayoutFuncs map[string]interface{}
|
||||
}
|
||||
// Pongo the configs for PongoEngine
|
||||
Pongo struct {
|
||||
@@ -207,7 +207,7 @@ func DefaultTemplate() Template {
|
||||
ContentType: "text/html",
|
||||
Charset: "UTF-8",
|
||||
Layout: "", // currently this is the only config which not working for pongo2 yet but I will find a way
|
||||
HTMLTemplate: HTMLTemplate{Left: "{{", Right: "}}", Funcs: template.FuncMap{}, LayoutFuncs: template.FuncMap{}},
|
||||
HTMLTemplate: HTMLTemplate{Left: "{{", Right: "}}", Funcs: make(map[string]interface{}, 0), LayoutFuncs: make(map[string]interface{}, 0)},
|
||||
Pongo: Pongo{Filters: make(map[string]pongo2.FilterFunction, 0), Globals: make(map[string]interface{}, 0)},
|
||||
Markdown: Markdown{Sanitize: false},
|
||||
Amber: Amber{Funcs: template.FuncMap{}},
|
||||
|
||||
10
iris.go
10
iris.go
@@ -134,6 +134,16 @@ func (s *Iris) initTemplates() {
|
||||
return "", nil
|
||||
},
|
||||
}
|
||||
// these should be already a non-nil map but if .New(cfg) it's not, is mergo's bug, temporary:
|
||||
if s.config.Render.Template.HTMLTemplate.LayoutFuncs == nil {
|
||||
s.config.Render.Template.HTMLTemplate.LayoutFuncs = make(map[string]interface{}, 1)
|
||||
}
|
||||
|
||||
if s.config.Render.Template.HTMLTemplate.Funcs == nil {
|
||||
s.config.Render.Template.HTMLTemplate.Funcs = make(map[string]interface{}, 1)
|
||||
}
|
||||
//
|
||||
|
||||
for k, v := range funcs {
|
||||
// we don't want to override the user's LayoutFuncs, user should be able to override anything.
|
||||
if s.config.Render.Template.HTMLTemplate.LayoutFuncs[k] == nil {
|
||||
|
||||
Reference in New Issue
Block a user