2017-08-27 57 views
5

Buduję typową paginację, która umożliwia użytkownikowi kliknięcie określonego numeru strony i wyświetlenie wyników (podobnie jak w widoku wyników wyszukiwania w Google). Używam do tego celu interfejsu API wyszukiwania chmurowego. Interfejs API wyszukiwania chmurowego udostępnia opcję limitu, ale nie ma opcji pomijania. Jak mogę pominąć liczbę wyników n, jeśli użytkownik jest na stronie 1 i klika na stronie 4?Pagacja bazy danych Cloudant/Couch w API wyszukiwania - Jak pominąć liczbę rekordów

Widzę, że paginacja jest zaimplementowana za pomocą zakładek. Czy to oznacza, że ​​muszę najpierw pobrać zakładkę do strony 4, wysyłając 3 dodatkowe żądania jeden po drugim do interfejsu wyszukiwania?

Odpowiedz

2

Istnieje kilka różnych sposobów radzenia sobie z tym - jeden z nich już zasugerowałeś, który polega tylko na pobieraniu stron w razie potrzeby, aby uzyskać zakładki. Nie jestem pewien, czy istnieje wiele alternatyw dla wyników wyszukiwania, w których nie możemy wstępnie obliczyć wyników.

Inną alternatywą, która zależy trochę od szczegółów tego, co próbujesz zrobić, jest utworzenie widoku zawierającego dane i użycie klawiszy do zawężenia widoku do potrzebnych wyników. Wyświetl wyjścia obsługują funkcje limit i skip, które umożliwią implementację paginacji.

Jest też dobrym przykładem paginacji w docs: http://docs.couchdb.org/en/2.1.0/ddocs/views/pagination.html

+0

Dziękuję. Będę eksperymentować z poglądami, ale nie jestem pewien, czy widok jest tym, czego powinienem używać. Wdrażam wyszukiwanie – Sethunath