如何从rails中的ActiveRecord中取五到五的结果

问题描述 投票:0回答:1

假设:

  @articles =(Article.find.all).some_method

我想以这样的方式循环@articles变量,结果如下:

[ [article1Obj, article2Obj, article3Obj, article4Obj, article5Obj], [article6Obj, article7Obj, article8Obj, article9Obj, article10Obj], [...], [...],......,[...] ].

列表列表,每个列表包含五个元素或通常n个元素。

Rails中是否有任何方法可以通过简单的方法实现。

ruby-on-rails ruby
1个回答
2
投票
@articles = Article.all.in_groups_of(5)

https://api.rubyonrails.org/classes/Array.html#method-i-in_groups_of

这将从数据库中加载所有文章,并为您提供一个数组数组,其中每个内部数组中都有5篇文章。

现在,如果您的数据库中有很多文章,这将很快产生很多结果,因此您需要相应地对结果进行分页。

© www.soinside.com 2019 - 2024. All rights reserved.