gpt4 book ai didi

ruby-on-rails - rails : Make a repeating partial in groups

转载 作者:行者123 更新时间:2023-12-01 09:35:55 25 4
gpt4 key购买 nike

假设我有一堆项目,我想遍历它们。我可能有一个 _item 部分来呈现这些。

我可以这样渲染:

= render :partial=>'item', :collection => @items, :as => :item

对于这个例子,假设部分非常简单,就像这样(在 haml 中):

.item= item.name

但是,我希望将这些项目按行分组,因此标记最终会是这样:

<div class="item_row">
<div class="item">Item Name</div>
<div class="item">Item Name</div>
<div class="item">Item Name</div>
<div class="item">Item Name</div>
<div class="item">Item Name</div>
</div>
<div class="item_row">
<div class="item">Item Name</div>
<div class="item">Item Name</div>
<div class="item">Item Name</div>
<div class="item">Item Name</div>
<div class="item">Item Name</div>
</div>
<div class="item_row">
<div class="item">Item Name</div>
<div class="item">Item Name</div>
<div class="item">Item Name</div>
<div class="item">Item Name</div>
<div class="item">Item Name</div>
</div>

我并不总是提前知道会有多少项目/我需要多少行。

你如何创建一个部分,或者包装一个部分,所以它会像这样呈现在组中?

最佳答案

您可以使用 Enumerable 的 each_slice 一次将这 5 个分组并连续显示:

<% @items.each_slice(5) do |items_for_row| %>
<div class="item_row">
<%= render :partial => "item", :collection => items_for_row, :as => :item %>
</div>
<% end %>

关于ruby-on-rails - rails : Make a repeating partial in groups,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8039702/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com