我正在尝试循环从AWS API返回的标记列表,但我得到“未定义的方法”值。如果需要,我可以提供更多信息。
这是我的简单循环:
@instances.each do |i|
t = 0
while i.tags.any? do
puts i.tags[t].value
t += 1
end
end
答案 0 :(得分:2)
i.tags.any?
数组不为空, true
就会返回tags.compact
。因此,您进入无限循环,迟早t
变得大于tags.length
。致电tags[tags.length]
返回nil
,并在value
上调用nil
会产生错误。
您可能想要的循环如下:
i.tags.each do |tag|
puts tag.value
end