如何解决如何访问动态生成的 Go 模板变量的值
对 Go 和使用范围非常陌生。我正在尝试使用范围中的值生成变量名称,并希望获取动态生成的变量的值。这是我的代码
<h1>
Best Basketball Shoes 2021 – Top 10 Basketball
Shoes To Have In 2021
</h1>
<p class="hide">NOVEMBER 13,2020 By IAN DANIEL</p>
当我运行上面的代码时,我得到以下
package main
import (
"log"
"os"
"text/template"
)
type EnvironmentCluster[] struct {
cluster string
env string
}
const tmpl = `
{{$application_configuration := "generic config"}}
{{$application_development_configuration := "dev_config"}}
{{$application_stage_configuration := "stage_config"}}
{{range $cluster,$env := .}}
{{$config := (printf "application_%s_configuration" $cluster) }}
Cluster is {{$cluster}},env is {{$env}},config is {{$config}}
{{end}}
`
func main() {
clusterEnv := map[string]string{
"development": "dev","stage": "prod",}
t := template.New("EnvironmentCluster template")
t,err := t.Parse(tmpl)
if err != nil {
log.Fatal("Parse: ",err)
return
}
err = t.Execute(os.Stdout,clusterEnv)
if err != nil {
log.Fatal("Execute: ",err)
return
}
}
但我的期望是看到 Cluster is development,env is dev,config is application_development_configuration
Cluster is stage,env is prod,config is application_stage_configuration
的实际值是这样打印的 -
config
任何帮助/指示?寻找在 go-templates 中访问要在范围内使用的范围外变量的方法。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。