Rails迭代视图中的字段

时间:2012-08-03 10:57:29

标签: ruby-on-rails iteration

我想迭代一些字段名称,将索引号附加到字段的名称,例如claim_1claim_2claim_3

简化视图:

<% (1..4).each_with_index do |index| %>
    <%= f.label :claims_index %> 
<% end %>

如何让索引分别为1,2,3,4或其他?

3 个答案:

答案 0 :(得分:1)

<% (1..4).each_with_index do |index| %>
    <%= f.label "claim_#{index}" %> 
<% end %>

答案 1 :(得分:1)

实际上你不需要each_with_index迭代器 -

<% 1.upto(4) do |i| %>
  <%= f.label "claims_#{i}" %> 
<% end %>

答案 2 :(得分:0)

不确定这是否是你所追求的但是each_with_index有两个参数,你可以这样做:

<% @claims.each_with_index do |claim,index| %>
   <%= "#{index+1}: #{claim.name}" %>
<% end %>

将打印出每个声明名称和索引(1,2,3,4)+1使其成为1,而不是0。

Alteranatively,只需使用:

<% (1..4).each do |i| %>
  <%= i %>
<% end %>