我有 X 个图像对象,需要在视图中循环遍历,并希望每 6 个对象左右创建一个新的 div(对于画廊)。
我看过cycle,但它似乎改变了所有其他记录。有谁知道每 6 次向视图中插入代码的方法吗?
我可能可以用嵌套循环来做到这一点,但我对这个有点难住了。
您可以使用Enumerable#each_slice
和这个结合#each
以避免内联计算。each_slice
将数组分成 n 个块,在本例中为 6。
<% @images.each_slice(6) do |slice| -%>
<div class="gallery">
<% slice.each do |image| -%>
<%= image_tag(image.url, :alt => image.alt) %>
<% end -%>
</div>
<% end -%>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)