冒烟的蘑菇
冒烟的蘑菇
2939 7 0

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

想实现 如果 帖子用户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 语法似乎不支持直接写,可以嵌套吗?

0

See Also

Nearby


Discussion (7)

youbbs
youbbs 2020-03-13 15:04

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

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

0
冒烟的蘑菇
冒烟的蘑菇 2020-03-14 11:27

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

0
冒烟的蘑菇
冒烟的蘑菇 2020-03-14 11:27

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

0
冒烟的蘑菇
冒烟的蘑菇 2020-03-14 11:53

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

0
youbbs
youbbs 2020-03-14 12:31

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

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

0
youbbs
youbbs 2020-03-14 12:37

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

// go
A, B := true, true


// html
{{if and .A .B}}A & B {{end}}
0
大道至简有事请别墨迹
大道至简有事请别墨迹 2020-03-27 16:48

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

0
Login Topics