Template Functions
Template Functions
Beego supports custom template functions but it must be set as below before web.Run()
:
func hello(in string)(out string){
out = in + "world"
return
}
web.AddFuncMap("hi",hello)
Then you can use these functions in template:
{{.Content | hi}}
Here are Beego’s built-in template functions:
-
dateformat
Format time, return string. {{dateformat .Time “2006-01-02T15:04:05Z07:00”}}
-
date
This is similar to date function in PHP. It can easily return time by string {{date .T “Y-m-d H:i:s”}}
-
compare
Compare two objects. If they are the same return true otherwise return false. {{compare .A .B}}
-
substr
Return sub string. supports UTF-8 string. {{substr .Str 0 30}}
-
html2str
Parse html to string by removing tags like script and css and return text. {{html2str .Htmlinfo}}
-
str2html Parse string to HTML, no escaping. {{str2html .Strhtml}}
-
htmlquote
Escaping html. {{htmlquote .quote}}
-
htmlunquote
Unescaping to html. {{htmlunquote .unquote}}
-
renderform
Generate form from StructTag. {{&struct | renderform}}
-
assets_js
Create a
<script>
tag from js src. {{assets_js src}} -
assets_css
Create a
<link>
tag from css src. {{assets_css src}} -
config
Get the value of AppConfig. {{config configType configKey defaultValue}}. configType must be String, Bool, Int, Int64, Float, or DIY
-
map_get
Get value of
map
by key// In controller Data["m"] = map[string]interface{} { "a": 1, "1": map[string]float64{ "c": 4, }, } // In view {{ map_get m "a" }} // return 1 {{ map_get m 1 "c" }} // return 4
-
urlfor
Get the URL of a controller method
{{urlfor "TestController.List"}}