将活动记录查询的结果划分为两个对象

时间:2009-07-10 18:56:29

标签: ruby-on-rails ruby activerecord

是否有类似rails的方法来划分activerecord查询的结果?例如,我执行了@results = Items.find(:all),但我希望@results的上半部分项目显示在<ul class="part1">下的订单项中,另一半显示在<ul class="part2">下{1}}。

<ul class="part1">
    <li><a href="#">result["name"]</a></li>
</ul>

<ul class="part2">
    <li><a href="#">resultpart2["name"]</a></li>
</ul>

提前感谢!

2 个答案:

答案 0 :(得分:7)

您可以使用ActiveSupport中的in_groups方法:

@grouped_results = @results.in_groups(2)

并对第1部分@grouped_results[0]和第2部分@grouped_results[1]进行迭代。

答案 1 :(得分:1)

@results[0...@results.size/2] #part1
@results[(@results.size/2)..-1] #part2