我的成员索引页只是一个成员列表,但我希望每3个成员被包装在一个包含div(这将行为像一个行)。因此,而不是:如何在ERB(Rails)中包装父元素中的每个N元素?
<div class="member"></div>
<div class="member"></div>
<div class="member"></div>
<div class="member"></div>
<div class="member"></div>
我需要的标记是:
<div class="row">
<div class="member"></div>
<div class="member"></div>
<div class="member"></div>
</div>
<div class="row">
<div class="member"></div>
<div class="member"></div>
</div>
我有一个解决方案,但我不喜欢它。我曾在ERB中看到过更好的方法,但是再也找不到它了。
我当前的代码:
<div class="row">
<% @members.each do |member| %>
<div class="member"><%=member.name%></div>
<%= cycle("", "", "</div><div class=\"row\">".html_safe) %>
<% end %>
</div>
您还可以in_groups_of更换each_slice(3)(3,FALSE) – 2012-07-20 15:11:23
三江源,先生!这正是我正在寻找的。 – tybro0103 2012-07-20 15:17:13
'in_groups_of'不适合我。这个答案'each_slice'节省了我的时间。 – 2017-05-24 09:39:34