为了账号安全,请及时绑定邮箱和手机立即绑定

使用 html/template 在切片中执行格式化的时间

使用 html/template 在切片中执行格式化的时间

Go
拉莫斯之舞 2021-06-24 18:14:57
我正在制作这个可以托管我的博客的简单网络服务器,但无论我做什么;我无法在我的 html/模板中执行正确的格式化时间。这是我所做的:我创建了这个结构:type Blogpost struct {    Title   string    Content string    Date    time.Time}接下来,我创建了这个小函数,它从 Appengine 数据存储中检索具有相应标题/日期的博客文章,并将其作为一个切片返回:func GetBlogs(r *http.Request, max int) []Blogpost {    c := appengine.NewContext(r)    q := datastore.NewQuery("Blogpost").Order("-Date").Limit(max)    bp := make([]Blogpost, 0, max)    q.GetAll(c, &bp)    return bp}最后,在 blogHandler 中,我使用以下方法基于从 Appengine 数据存储中检索到的数据创建了一个切片:blogs := GetBlogs(r, 10)现在,当我像这样执行名为 blog 的模板时,博客的日期被解析为默认日期:blog.Execute(w, blogs) // gives dates like: 2013-09-03 16:06:48 +0000 UTC所以,作为 Golang n00b 的我,会说像下面这样的函数会给我想要的结果blogs[0].Date = blogs[0].Date.Format("02-01-2006 15:04:05") // Would return like 03-09-2013 16:06:48, at least when you print the formatted date that is.但是,这会导致类型冲突,我尝试使用以下方法解决:blogs[0].Date, _ = time.Parse("02-01-2006 15:04:05", blogs[0].Date.Format("02-01-2006 15:04:05")) // returns once again: 2013-09-03 16:06:48 +0000 UTC这可能是我再次监督的一些 n00b 事情,但我看不出我如何无法覆盖时间。时间 输入切片或至少以我想要的格式打印它。
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 239 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信