5
@locations = Location.all #current listing all

@locations = Location.slice(5) or Location.split(5)

使用 Ruby,我试图将列表分成 4 列,每列限制为 5 列;但是切片或拆分似乎都不起作用。知道我可能做错了什么吗?任何帮助是极大的赞赏。

4

2 回答 2

11

您可能想使用 in_groups_of:

http://railscasts.com/episodes/28-in-groups-of

这是来自该 railscast 的 Ryan Bates 的示例用法:

<table>
<% @tasks.in_groups_of(4, false) do |row_tasks| %>
  <tr>
    <% for task in row_tasks %>
      <td><%= task.name %></td>
    <% end %>
  </tr>
<% end %>
</table>
于 2013-05-04T15:17:47.410 回答
2

以下内容是否适合您的目的?

Location.find_in_batches(batch_size: 5) do |group|
  # code to work with these 5 elements
end

find_in_batches将查找选项找到的每批记录生成为一个数组。

于 2013-05-04T15:17:46.060 回答