gpt4 book ai didi

go - 如何设置默认选择选项以使用 Golang 选择标签?

转载 作者:IT王子 更新时间:2023-10-29 02:00:49 27 4
gpt4 key购买 nike

首先,我发现了这个问题:

How can I set the default value for an HTML <select> element in Golang?

但就我而言,我不知道该怎么做。

我有很多帖子数据并将它们呈现给模板。

Controller :

c.Data["posts"] = posts_data

查看:

{{ range $post := .posts }}
<option value="{{ $post.ID }}">{{ $post.Name }}</option>
{{ end }}

工作正常。

但如果改为:

Controller :

c.Data["posts"] = posts_data
c.Data["post_id"] = param_data

查看:

{{ range $post := .posts }}
<option value="{{ $post.ID }}" {{ if eq $post.ID .post_id }}selected="selected"{{ end }}>{{ $post.Name }}</option>
{{ end }}

出现错误:

template Execute err: template: posts/index.tpl:20:70: executing "posts/index.tpl" at <.post_id>: can't evaluate field post_id in type models.Post

确实 post_id 不存在于 models.Post 中。但是这样怎么用呢?

最佳答案

range 命令将 . 设置为当前值。使用 $ 来引用传递给模板的根值:

{{ range $post := .posts }}
<option value="{{ $post.ID }}" {{ if eq $post.ID $.post_id }}selected="selected"{{ end }}>{{ $post.Name }}</option>
{{ end }}

因为范围集.,模板可以简化为:

{{ range $post := .posts }}
<option value="{{ .ID }}" {{ if eq .ID $.post_id }}selected="selected"{{ end }}>{{ .Name }}</option>
{{ end }}

关于go - 如何设置默认选择选项以使用 Golang 选择标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55489071/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com