如何获得一个3"每个"循环的轨道计数器?

Fra*_*ois 12 ruby ruby-on-rails ruby-on-rails-3

如何在.each循环中添加计数器?这样做有简单的方法吗?我尝试了以下但它似乎不起作用.谢谢!

<% @album.each do |e| %>
   <%= e %> #my_counter_does_not_work :)
   <%= link_to e.name, :controller => "images", :action => "album", :album_id => e.id, :album_name => e.name %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

Dav*_*ulc 42

使用each_with_index:索引将自动成为您的计数器(但请注意它从0开始而不是1):

<% @album.each_with_index do |e, index| %>
  <%= link_to e.name, :controller => "images", :action => "album", :album_id => e.id, :album_name => e.name %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

  • 从ruby 1.9.1开始,你可以在每个返回枚举器的方法上链接一个`.with_index`来获得相同的结果.您还可以提供一个整数作为参数来表示起始索引,如果由于某种原因不应该为0. (7认同)