Я новичок, и я пытаюсь выяснить, можно ли использовать Каминари дважды в том же контроллере, что и в моем примере ниже. Я в конечном счете, хотят, чтобы иметь возможность постраничной и отображать два набора результатов поиска на одной странице ....Можно ли использовать Каминари дважды в одном контроллере?
Ex:
def whatever
@page = params[:page] ||= 1
@per = params[:per] ||= 32
@code = query (1st query)
@code = query.uniq.to_a
@code = Kaminari.paginate_array(@code).page(@page).per(@per)
@code2 = query (2nd query)
@code2 = query.uniq.to_a
@code2 = Kaminari.paginate_array(@code2).page(@page).per(@per)
end
Код, который у вас уже есть, должен хорошо работать так, как сейчас, что мне интересно, почему вы разбиваете страницы после преобразования в массив и что isiq делает –
Хороший вопрос. Но в любом случае ему не нужно беспокоиться об этом, так как рельсы ленивы загружают данные для него. @MohammadAbuShady – bsvin33t
Как хорошо, как люди думают, что ленивая загрузка, чрезмерное использование ее убивает вашу производительность, но я не уверен, в какой части вы обращаетесь, но в любом случае я хочу сказать, что если вы разбиваете страницы на массив, что означает, что вы собираетесь запрашивать больше данных, чем вам на самом деле (если не тогда, почему вы используете правую кнопку справа?), и это отходы, просто пусть kaminary обрабатывает запрос и ограничивает результаты только теми «32» элементами, которые вы хотите. –