2.基本函数
最后更新于:2022-04-02 04:53:44
基本函数
变量可以使用符号 | 在函数间传递
{{.Con | markdown | addlinks}}
{{.Name | printf "%s"}}
使用括号
{{printf "nums is %s %d" (printf "%d %d" 1 2) 3}}
代码实现:
~~~
|-- admin
| |--controllers
| `-- user.go
~~~
~~~
package admin
import (
"fmt"
"net/url"
"github.com/astaxie/beego"
)
type UserController struct {
beego.Controller
}
func (this *UserController) Index() {
// 函数 and , 函数 or
this.Data["x"] = "x"
this.Data["y"] = "y"
this.Data["z"] = "z"
// 函数 call
this.Data["dump"] = fmt.Println
this.Data["arg1"] = 1
this.Data["arg2"] = 2
// 函数 index
this.Data["index"] = map[string]string{"this": "is", "function": "index"}
// 函数 len
this.Data["len"] = [10]int{}
// 函数 not
this.Data["not1"] = true
this.Data["not2"] = false
this.Data["not3"] = "not"
this.Data["not4"] = "true"
// 函数 urlquery
urlencode, _ := url.ParseQuery("http://beego.me")
this.Data["urlencode"] = urlencode.Encode()
this.TplName = "admin/user/index.html"
}
~~~
~~~
|-- views
| |--admin
| |--user
| `-- index.html
~~~
~~~
Document
this is view admin/user/index.html
函数 and :
{ {and .a .b .c} } 返回空 {{and .a .b .c}}
{ {and .x .y .z} } 返回最后一个非空值 {{and .x .y .z}}
函数 or :
{ {and .a .b .c} } 返回最后一个参数 {{and .a .b .c}}
{ {and .x .y .z} } 返回第一个非空的参数 {{and .x .y .z}}
函数 call :
{{call .dump .arg .arg}}
函数 index :
{ {index .index "function"} } 下标对应的值是: {{index .index "function"}}
函数 len :
{{printf "The len length is %d" (.len|len)}}
函数 not :
not1 : {{not .not1}}
not2 : {{not .not2}}
not3 : {{not .not3}}
not4 : {{not .not4}}
函数 print 对应 fmt.Sprint
函数 printf 对应 fmt.Sprintf
函数 println 对应 fmt.Sprintln
{{printf "x => %s , y => %s , z => %v\n" .x .y .z}} 函数 urlquery :
{{urlquery "http://beego.me"}}
url.Encode() => {{.urlencode}}
函数 eq / ne / lt / le / gt / ge 这类函数一般配合在 if 中使用 ~~~
';
函数 and :
{ {and .a .b .c} } 返回空 {{and .a .b .c}}
{ {and .x .y .z} } 返回最后一个非空值 {{and .x .y .z}}
函数 or :
{ {and .a .b .c} } 返回最后一个参数 {{and .a .b .c}}
{ {and .x .y .z} } 返回第一个非空的参数 {{and .x .y .z}}
函数 call :
{{call .dump .arg .arg}}
函数 index :
{ {index .index "function"} } 下标对应的值是: {{index .index "function"}}
函数 len :
{{printf "The len length is %d" (.len|len)}}
函数 not :
not1 : {{not .not1}}
not2 : {{not .not2}}
not3 : {{not .not3}}
not4 : {{not .not4}}
函数 print 对应 fmt.Sprint
函数 printf 对应 fmt.Sprintf
函数 println 对应 fmt.Sprintln
{{printf "x => %s , y => %s , z => %v\n" .x .y .z}} 函数 urlquery :
{{urlquery "http://beego.me"}}
url.Encode() => {{.urlencode}}
函数 eq / ne / lt / le / gt / ge 这类函数一般配合在 if 中使用 ~~~