请教一下站长一个 golang template 语法

By at • 469次点击
冒烟的蘑菇

想实现 如果 帖子用户ID与当前已登录用户ID相同 ,或 用户权限为管理员 则 有编辑功能,模版语法怎么写?

我现在很傻比的写法:

{{if eq .CurrentUser.Id .Aobj.Uid}}
• <a href="/admin/post/edit/{{.Aobj.Id}}">编辑</a>
{{end}}
{{if ge .CurrentUser.Flag 99}}
    • <a href="/admin/post/edit/{{.Aobj.Id}}">编辑</a>
{{end}}

这样管理员自己的帖子会有两个编辑链接~~~虽然能用,但我相信应该有更优雅的写法~

golang template 的 and 语法似乎不支持直接写,可以嵌套吗?


golang, template, 语法, 请教, 站长


支持 and ,但我没用过,更喜欢在程序里做判断,比如添加一个变量 CanEdit

国内镜像文档 https://golang.google.cn/pkg/text/template/ 3

youbbs at 2020-03-13 23:04
1

@youbbs #1 文档我知道,我也看了~ 只是看了下他的and,感觉是不支持的,估计要用你说的办法了~

冒烟的蘑菇 at 2020-03-14 19:27
2

提交评论后,没有清空评论框,有意为之还是?

冒烟的蘑菇 at 2020-03-14 19:27
3

加一个 ctrl-enter 提交评论的功能,可否?

冒烟的蘑菇 at 2020-03-14 19:53
4

@冒烟的蘑菇 #3 提交评论后在等待返回结果,如果正常则重载当前界面,若没成功就保留输入框,左下角弹出提示信息。

ctrl-enter 提交是个人习惯与用户习惯,不加了

youbbs at 2020-03-14 20:31
5

@冒烟的蘑菇 #2 刚测,支持

// go
A, B := true, true


// html
{{if and .A .B}}A & B {{end}}
youbbs at 2020-03-14 20:37
6

没用,只支持bool类型 相当于你还要写2个函数 来判断 返回bool 给他判断还不如直接一个函数搞定

大道至简有事请别墨迹 at 2020-03-28 00:48
7
登录 后发表评论