gin 框架模板渲染

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

1、下载gin软件包

go get -u github.com/gin-gonic/gin 2、引入代码

import "github.com/gin-gonic/gin" 3、引入 net/http 包(尽量引用)

import "net/http"

4、配置路由,新建main.go

5、渲染模板,定义路由

router.GET("/", func(c *gin.Context) { c.HTML(http.StatusOK, "default/index.html", map[string]interface{}{ "title": "前台首页" } 6、新建html

{{template default/index.html}} html内容 {{end}}

内容使用{{.name}}来展示数据 如果是数组,则使用循环{{range $key,$vlaue:=.name}} {{$vlaue}} {{end}}

如果为结构体: {{range $key,$vlaue:=.name}} {{$vlaue.结构体中的名字}} {{end}}

7、比较函数

eq 如果 arg1 == arg2 则返回真 ne 如果 arg1 != arg2 则返回真 lt 如果 arg1 < arg2 则返回真 le 如果 arg1 <= arg2 则返回真 gt 如果 arg1 > arg2 则返回真 ge 如果 arg1 >= arg2 则返回真 8、条件判断

{{if pipeline}} T1 {{end}} {{if pipeline}} 1 {{else}} 0 {{end}} {{if pipeline}} 1 {{else if pipeline}} 0 {{end}} {{if gt .score 60}} 及格 {{else}} 不及格 {{end}} 9、预定义函数 预定义的全局函数如下: ``` and 函数返回它的第一个 empty 参数或者最后一个参数;就是说"and x y"等价于"if x then y else x";所有参数都会执行;

or 返回第一个非 empty 参数或者最后一个参数; 亦即"or x y"等价于"if x then x else y";所有参数都会执行;

not 返回它的单个参数的布尔值的否定

len 返回它的参数的整数类型长度 index 执行结果为第一个参数以剩下的参数为索引/键指向 的值; 如"index x 1 2 3"返回 x[1][2][3]的值;每个被索引的主体必须是数组、切 片或者字典。

print 即 fmt.Sprint printf 即 fmt.Sprintf println 即 fmt.Sprintln html 返回与其参数的文本表示形式等效的转义 HTML。 这个函数在 html/template 中不可用。

urlquery 以适合嵌入到网址查询中的形式返回其参数的文本表示的转义值。这个函数在 html/template 中不可用。

js 返回与其参数的文本表示形式等效的转义 JavaScript。

call 执行结果是调用第一个参数的返回值,该参数必须是函数类型,其余参数作为调用该函数 的参数; 如"call .X.Y 1 2"等价于 go 语言里的 dot.X.Y(1, 2); 其中 Y 是函数 类型的字段或者字典的值,或者其他类似情况; call 的第一个参数的执行结果必须是函数类型的值(和预定义函数如print 明显不同);该函数类型值必须有 1 到 2 个返回值如果有 2 个则后一个必须是error 接口类型; 如果有 2 个返回值的方法返回的 error 非nil,模板执行会中断并返回给调用模板执行者该错误; 10、自定义模板 路由,写在静态路由(加载模板)上面 router.SetFuncMap(template.FuncMap{ "formatDate": formatAsDate, }) ``` 用法:

{{.now | formatDate}} 或者 {{formatDate .now }}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值