通过erb模板输出ruby数组
发布时间:2020-12-17 03:28:47 所属栏目:百科 来源:网络整理
导读:我正在使用puppet为 ruby程序提供一组常量. 我需要提供一个我的程序将迭代的主机名数组. 在我之前使用的bash脚本中,我只是作为一个木偶变量 hosts = "host1,host2" 我提供给bash脚本的 HOSTS=%= hosts % 显然这对ruby不太有用 – 我需要它的格式 hosts = ["h
我正在使用puppet为
ruby程序提供一组常量.
我需要提供一个我的程序将迭代的主机名数组. 在我之前使用的bash脚本中,我只是作为一个木偶变量 hosts => "host1,host2" 我提供给bash脚本的 HOSTS=<%= hosts %> 显然这对ruby不太有用 – 我需要它的格式 hosts = ["host1","host2"] 以来 p hosts 和 puts my_array.inspect 提供输出 ["host1","host2"] 我希望使用其中一个. <% p hosts %> <% puts hosts.inspect %> 我找到了他们表示我需要在函数调用前放置“function_”的地方……这似乎不起作用.我已经确定了一个迭代模型: [<% hosts.each do |host| -%>"<%=host%>",<% end -%>] 这是有效的,给我 ["host1","host2",] 但尾随的逗号感觉很草率.整件事感到草率.有没有人有更好的方法?或者我是最好的选择? 解决方法
我用这种方式解决了(Puppet v3.0.1):
{ "your_key1": { "your_key2": [<% puppet_var.join('","').each do |val| %>"<%= val %>"<% end -%>] } } 如果$puppet_var是像[“a”,“b”]这样的数组,那么输出应该类似于: { "your_key1": { "your_key2": ["a","b"] } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |