Mongoid - Определите, есть ли результаты на следующей странице
Используя Mongoid, как я могу проверить, если дан limit/results_per_page
варианты есть следующая страница?
Предположим, моя сфера
MyCollection.page(@page).per(@per)
призвание .count
вычислит общее количество результатов на всех страницах. Но как я могу определить, является ли текущая страница полной / пустой? Или лучше, если следующая страница пуста? Нужно ли разрешать сферу, вызывая что-то вроде to_a
?
1 ответ
Решение
призвание
.count
вычислит общее количество результатов на всех страницах.
Да. И ты знаешь @page
а также @per
, Это все, что вам нужно. Пока @page * @per
меньше чем count
, у вас есть (хотя бы одна) следующая страница. (при условии, что страницы начинаются с 1, а не с 0)
Пример:
У нас есть 57 элементов, и наш размер страницы составляет 20.
@page @per displaying @page*@per count have next page?
1 20 1 - 20 20 57 yes
2 20 21 - 40 40 57 yes
3 20 41 - 57 60 57 no