这应该相当简单,我知道如何在迭代中增加计数器以及如何嵌套循环 - 但我想知道是否有更优雅的解决方案?
我如何计算迭代运行的频率并在每次运行 X 次时注入(inject)额外的代码?
我尝试使用 each_slice,但这是查看数组本身的内容而不是数组的数量。
这是我的示例代码:
<% @organization.users.each do |user| %>
<div class="row">
<div class="col-xs-6 col-md-3">
<%= user.profile.first_name %> <%= user.profile.last_name %>
<%= link_to 'Show', organization_user_path(@organization, user.id) %>
<%= link_to 'Edit', '#' %>
</div>
</div>
<% end %>
理想情况下我会运行循环 4 次,在第 4 次之后将添加一个新行
您可以使用each_with_index
并使用index 来了解循环运行的次数
<% @organization.users.each_with_index do |user, i| %>
<div class="row">
<div class="col-xs-6 col-md-3">
<%= user.profile.first_name %> <%= user.profile.last_name %>
<%= link_to 'Show', organization_user_path(@organization, user.id) %>
<%= link_to 'Edit', '#' %>
</div>
</div>
<%if (i+1)%4 == 0 %>
<% end %>
<% end %>
我是一名优秀的程序员,十分优秀!