Ruby:在erb中使用每个

时间:2013-10-31 13:15:36

标签: ruby loops erb

我如何使用索引来引用不同的变量? variable1,variable2应该用ruby文件中的内容替换。

erb :main, :locals => { :variable0 => "Hallo",  
                        :variabl1 => "World"
                        }                                    
end

此代码只返回变量名而不是变量内容。

* .erb文件:

<% (0..1).each do | index | %>.
     <td> <%= "variable"+i.to_s %> </td>
<% end %>

任何想法?

1 个答案:

答案 0 :(得分:4)

如果您开始使用item1item2等数字附加变量名称,那么这是一个明确的信号,表明您做错了并且应该使用数组。

将上述内容与此版本使用数组进行比较:

data = ['Hello', 'World']
erb :main, locals: { data: data }

data.each do |item|
  puts item
end