这应该相当简单,我知道如何在迭代中增加计数器以及如何嵌套循环 - 但我想知道是否有更优雅的解决方案?
如何计算迭代运行的频率,并在每次运行X次时注入其他代码?
我尝试使用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次后会添加新行
答案 0 :(得分:2)
您可以使用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 %>