2015-01-31 2 views
0

Я реализовал страничный пейджинг на стороне сервера на 10 элементов на странице для 1000 наборов результатов, чтобы он отображал 10 элементов на странице. Когда у меня была клиентская сторона, я мог бы на странице 10 за раз, и если бы я отсортировался, он сортировал бы против всего 1000 элементов, но только показывал 10 пунктов на странице. Однако, используя серверный пейджинг, где мой вызов REST возвращает только 10 элементов за раз, моя сортировка выполняется только в пределах одной страницы за раз, поскольку она не может сравниться с другими 990 элементами, которые еще не вызваны.Подкачка на стороне сервера, но ценой потери сортировки

Учитывая это, как можно организовать подкачку и сортировку на стороне сервера по всем элементам? Это предполагает, что я использую REST/JSON, представленный с использованием AngularJS.

Интересно, что в моем вызове REST с помощью такого инструмента, как почтальон, он должным образом поддерживает общий порядок даже с помощью пропусков, но с вызовами разбиения на страницы в моем приложении «Угловое» он выполняет только заказы внутри элементов (например, 10) ,

+2

Если вы получаете элементы из базы данных, просто выполните сортировку в запросе ('order by ...'). – Pointy

+1

Если это MySQL, вы можете использовать 'LIMIT pagestart, pagesize', чтобы вернуть набор строк, начиная с определенного места в результирующем наборе. – Barmar

+0

Спасибо, я нашел проблему, у меня был другой вид, противоречащий коду. Я использую orderby, и он работает, как и планировалось, после того, как я удалил другой вид, оставшийся в более старом коде. – Kode

ответ

0

Я нашел проблему, где у меня был дополнительный код для сортировки по-прежнему на странице, которая противоречила порядку в моем вызове REST.

Смежные вопросы