Chef和ruby:如何将数组转换为集合

Chef和ruby:如何将数组转换为集合,ruby,Ruby,我有一个如下所示的数组: nodes = ['server1','server1','server2'] 在厨师食谱中,我需要转换成一组,然后才能传递到模板erb。如何做到这一点?此模式适用于Set、Matrix、JSON等。;这是第一件要尝试的事情 require 'set' nodes = ['server1','server1','server2'] p nodes.to_set # #<Set: {"server1", "server2"}> require'set' 节

我有一个如下所示的数组:

nodes = ['server1','server1','server2']

在厨师食谱中,我需要转换成一组,然后才能传递到模板erb。如何做到这一点?

此模式适用于Set、Matrix、JSON等。;这是第一件要尝试的事情

require 'set'
nodes = ['server1','server1','server2']
p nodes.to_set # #<Set: {"server1", "server2"}>
require'set'
节点=['server1'、'server1'、'server2']
p.to_集##

如果要使其唯一(因为集合是唯一的),但仍然作为数组,可以使用|[]

nodes = ['server1','server1','server2']
nodes|[] 
# or nodes |= [] # for inplace operation

# => ["server1", "server2" ]

p
是编码员的一种方法-我这里有什么?;它是
放置节点。设置。检查
的缩写。此处仅用于演示
to_set
方法的结果。