Golang - html/template模板中格式化日期

Golang - html/template模板中格式化日期

在Go语言渲染html页面的时候,经常需要对日期进行格式化,一种可以在渲染之前,就将变量转换成对应的字符串;另一种根据template的语法在渲染模板的时候进行格式化。

Golang - html/template模板中格式化日期

语法:

{{ .<vaiable>.Format <layout>}}

变量后面加Format 格式


layout格式跟time包里面的定义是一样的:

月份 1,01,Jan,January

日 2,02,_2

时 3,03,15,PM,pm,AM,am

分 4,04

秒 5,05

年 06,2006

时区 -07,-0700,Z0700,Z07:00,-07:00,MST

周几 Mon,Monday

比如小时的表示(原定义是下午3时,也就是15时)

3 用12小时制表示,去掉前导0

03 用12小时制表示,保留前导0

15 用24小时制表示,保留前导0

03pm 用24小时制am/pm表示上下午表示,保留前导0

3pm 用24小时制am/pm表示上下午表示,去掉前导0

又比如月份

1 数字表示月份,去掉前导0

01 数字表示月份,保留前导0

Jan 缩写单词表示月份

January 全单词表示月份


Golang - html/template模板中格式化日期

例子:

type Log struct{
 ID int
 Info string
 CreateAt time.Time

}

在html里面调用

默认格式:

<span>{{ .CreateAt }}</span>

格式化:

<span> {{ .CreateAt.Format "2006-01-02 15:04:05" }} </span>

相关推荐