Как взять результаты пять на пять с ActiveRecord в рельсах - PullRequest
0 голосов
/ 03 апреля 2019

Предположим:

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

Я хочу выполнить цикл для переменной @articles таким образом, чтобы результаты были такими:

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

список списков, каждый из которых содержит пять элементовили вообще n элементов.

Существует ли какой-либо метод в Rails, который может сделать это простым способом.

1 Ответ

2 голосов
/ 03 апреля 2019
@articles = Article.all.in_groups_of(5)

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

Это загрузит все статьи из базы данных и даст вам массив массивов, в котором каждый внутренний массив содержит 5 статей.

Теперь, если у вас есть много статей в вашей базе данных, это быстро будет много результатов, поэтому вы захотите соответственно разбить на страницы свои результаты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...