看物体时的偏移量?

时间:2012-09-24 10:19:56

标签: ruby-on-rails

我在控制器中有这样的东西:

@puzzleGames = Game.where("category = 'puzzle'").limit(8)

但在视图中我将它们显示在2个单独的区域中,4合1和4个。

而不是做这样的事情:

<% @puzzleGames.each do |puzzleGame| %>

循环遍历所有元素,是否可以循环到有限数字(0-3,4-7)?

由于

3 个答案:

答案 0 :(得分:3)

您也可以尝试使用此

@gameSlices = @puzzleGames.each_slice(4)

然后使用@gameSlices.first@gameSlices.last

编辑:事实证明@gameSlices.next在这种情况下非常有用。它将逐个返回每个切片。

或者您可以使用像

这样的块
@puzzleGames.each_slice(4) do |slice|
    # Do your stuffs with slice
end

答案 1 :(得分:0)

尝试 @puzzleGames[0...4]@puzzleGames[4...8]

答案 2 :(得分:0)

@puzzleGames = Game.where("category = 'puzzle'").limit(8)
@firstFourPuzzleGames = arr.each_slice(4).map(&:first)
@lastFourPuzzleGames = arr.each_slice(4).map(&:last)

<% @firstFourPuzzleGames.each do |puzzleGame| %>
<% end %>

<% @lastFourPuzzleGames.each do |puzzleGame| %>
<% end %>