iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >Go Template 动态获取变量
  • 709
分享到

Go Template 动态获取变量

2024-02-06 05:02:27 709人浏览 薄情痞子
摘要

问题内容 我的 yml 参数看起来像 nodes: one, two instanceminone: 1 instancemaxone: 2 instancemintwo: 4 ins

问题内容

我的 yml 参数看起来像

nodes: one, two
instanceminone: 1
instancemaxone: 2
instancemintwo: 4
instancemaxtwo: 6

有没有一种方法可以使用Go模板动态读取例如instanceminone,其中变量名称由instancemin +来自节点列表的动态值组成?

类似的东西(这显然不起作用,但只是给出了我想要实现的目标的想法)

{{ - range $nodeName := (split .Parameters.nodes) } } } }
   instance-min: {{ .Parameters.instanceMin$nodeName }}
   instance-max: {{ .Parameters.instanceMan$nodeName }}
{{ - end }}


正确答案


要实现您想要的目标,您必须解决 2 个任务:

对于连接,您可以使用内置的 print 函数,例如

{{ $key := print "instancemin" $nodename }}

对于索引,请使用内置的 index 函数:

instance-min: {{ index $.parameters $key }}

(注意:{{range}} 操作会更改点,因此在其中您需要 $ 来引用循环变量外部。)

或者一行:

instance-min: {{ index $.parameters (print "instancemin" $nodename) }}

查看可运行的演示:

func main() {
    t := template.must(template.new("").parse(src))

    params := map[string]any{
        "parameters": map[string]any{
            "nodes":          []string{"one", "two"},
            "instanceminone": 1,
            "instancemaxone": 2,
            "instancemintwo": 4,
            "instancemaxtwo": 6,
        },
    }

    if err := t.execute(os.stdout, params); err != nil {
        panic(err)
    }
}

const src = `{{- range $idx, $nodename := .parameters.nodes }}
   instance-min: {{ index $.parameters (print "instancemin" $nodename) }}
   instance-max: {{ index $.parameters (print "instancemax" $nodename) }}
{{- end }}`

这将输出(在 go playground 上尝试):

instance-min: 1
instance-max: 2
instance-min: 4
instance-max: 6

以上就是Go Template 动态获取变量的详细内容,更多请关注编程网其它相关文章!

--结束END--

本文标题: Go Template 动态获取变量

本文链接: https://www.lsjlt.com/news/561248.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Go Template 动态获取变量
    问题内容 我的 yml 参数看起来像 nodes: one, two instanceminone: 1 instancemaxone: 2 instancemintwo: 4 ins...
    99+
    2024-02-06
  • Mysql中如何获取状态和变量
    Mysql中如何获取状态和变量,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。#getMysqlEnv SLAVE_SATUS  ...
    99+
    2024-04-02
  • vue动态绑定ref(使用变量)以及获取方式
    目录vue动态绑定ref及获取一起来看下代码吧ref三种使用方法refvue动态绑定ref及获取 正常情况,我们需要在vue中获得某个dom或者组件,我们会通过绑定 ref 然后通过...
    99+
    2024-04-02
  • python 获取环境变量
    python 获取环境变量 参考 https://docs.python.org/2/library/os.html 使用os.environ获取环境变量字典 import os env_dist = os.environ #...
    99+
    2023-01-31
    环境变量 python
  • php动态获取常量的方法是什么
    在PHP中,常量是指在脚本执行期间不变的值。常量一旦被定义,在脚本的其他任何地方都可以使用。常量的值只能是标量数据类型(布尔值、整数...
    99+
    2023-10-07
    php
  • python如何获取变量名
    在Python中,可以使用`locals()`函数获取当前作用域中所有变量的名称和值,并以字典的形式返回。 示例代码如下: x = ...
    99+
    2023-10-27
    python
  • Shell eval怎么用变量获取环境变量
    这篇文章主要讲解了“Shell eval怎么用变量获取环境变量”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Shell eval怎么用变量获取环境变量”吧!场景系统中存在环境变量 USER=...
    99+
    2023-06-09
  • Go获取与设置环境变量的方法详解
    目录前言01 从安装 Go 说起 02 Go 如何使用环境变量 03 小结 前言 今天的文章比较基础,但却是必须掌握的,而且本文有些内容,也许你之前没想过。希望这篇文章能够让你理解环...
    99+
    2024-04-02
  • 获取正确的环境变量
    哈喽!今天心血来潮给大家带来了《获取正确的环境变量》,想必大家应该对Golang都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到,若是你正在学习Golang,千万别错过这篇文章~希望能帮助...
    99+
    2024-04-05
  • 获取MySQL中变量的类型?
    无法获取 MySQL 中变量的类型。使用 CAST 运算符将变量的类型转换为另一个类型。语法如下 -SET @yourVariableName:=’anyValue’使用 CAST 运算符转换为另一种类型。语法如下 ...
    99+
    2023-10-22
  • Go获取与设置环境变量的方法是什么
    这篇文章主要讲解了“Go获取与设置环境变量的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Go获取与设置环境变量的方法是什么”吧!01 从安装 Go 说起其实不止是安装 Go,其他...
    99+
    2023-06-25
  • PHP如何获取动态数据
    这篇文章主要介绍“PHP如何获取动态数据”,在日常操作中,相信很多人在PHP如何获取动态数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP如何获取动态数据”的疑惑有所帮助!接下来,请跟着小编一起来学习吧...
    99+
    2023-07-06
  • jQuery如何获取动画状态?
    这篇文章将为大家详细讲解有关jQuery如何获取动画状态?,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。jQuery 获取动画状态 获取动画状态对于实时监控动画进度和管理动画行为至关重要。jQuery 提...
    99+
    2024-04-02
  • selenium如何获取动态数据
    这篇文章主要介绍了selenium如何获取动态数据的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇selenium如何获取动态数据文章都会有所收获,下面我们一起来看看吧。Selenium 是一个自动化测试工具,利...
    99+
    2023-07-02
  • python中如何获取环境变量
    python中获取环境变量的方法:1、在win操作系统中找到python程序目录;2、打开idle工具;3、在idle中新建一个shell脚本;4、输入“import os”指令导入os模块;5、通过“os.getenv()”指令获取环境变...
    99+
    2024-04-02
  • VB.NET中怎么获取环境变量
    本篇文章为大家展示了VB.NET中怎么获取环境变量,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Windows系统将很多重要的信息(比如计算机名和用户名)存储在环境变量中。访问这些变量来获取这些信息...
    99+
    2023-06-17
  • kettle怎么设置和获取变量
    在JavaScript中设置和获取变量可以使用以下方法: 设置变量: var kettle = "Electric&quo...
    99+
    2024-04-02
  • java获取和设置系统变量问题(环境变量)
    目录Java获取环境变量获取系统变量设置系统变量如何检查JDK环境变量是否配置成功总结Java获取环境变量 Java 获取环境变量的方式很简单:  System.getEn...
    99+
    2023-01-01
    java获取系统变量 java设置系统变量 环境变量
  • 怎么获取javascript变量的类型
    这篇文章主要介绍“怎么获取javascript变量的类型”,在日常操作中,相信很多人在怎么获取javascript变量的类型问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么...
    99+
    2024-04-02
  • 怎样用Python获取环境变量
    环境变量的获取通过os.environ模块。 import os print(os.environ["path"]) 或者你可以以下命令看到所有环境变量 os.environ 有时您可能需要查看完整列表 # 当key不存在时,将会报错Key...
    99+
    2023-01-31
    环境变量 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作