Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa

Darmowa diagnoza laptopa

Dojazd do klienta bezpłatnie

Dojazd do klienta bezpłatnie

Laptopy zastępcze bezpłatnie

Laptopy zastępcze bezpłatnie

Odbiór i zwrot sprzętu bezpłatnie

Odbiór i zwrot sprzętu bezpłatnie

błędy w pagination (np. pokazuje puste strony)

Termin Definicja
błędy w pagination (np. pokazuje puste strony)

Błędy w pagination, np. wyświetlanie pustych stron, to usterki mechanizmu podziału wyników na kolejne strony w interfejsie.

Jak powstają puste strony w mechanizmie pagination

Pagination, czyli stronicowanie wyników, dzieli większy zbiór rekordów na mniejsze fragmenty wyświetlane pod kolejnymi numerami stron. W najczęstszym wariancie żądanie zawiera numer strony oraz rozmiar strony, na przykład parametr określający, że należy pobrać 20 rekordów zaczynających się od pozycji 40. Mechanizm oblicza wtedy przesunięcie na podstawie wzoru offset = (numer strony − 1) × rozmiar strony i przekazuje do warstwy pobierającej danych informację o limicie oraz przesunięciu.

Pusta strona może pojawić się wtedy, gdy numer strony jest większy niż liczba stron wynikająca z aktualnej liczby rekordów. Podobny efekt występuje po usunięciu elementów, zmianie filtrów, zmianie sortowania albo wygaśnięciu danych pomiędzy kolejnymi żądaniami. Interfejs może nadal pokazywać wcześniej wybrany numer strony, mimo że po ponownym zapytaniu nie ma już rekordów przypisanych do tego zakresu. Błąd może również wynikać z pomieszania numeracji zaczynającej się od zera z numeracją zaczynającą się od jedynki.

Rozbieżność między liczbą wyników a zawartością strony

Do wyznaczenia liczby stron aplikacja zwykle potrzebuje dwóch niezależnych informacji: listy rekordów dla bieżącej strony oraz całkowitej liczby rekordów spełniających warunki zapytania. Jeśli licznik jest obliczany bez tego samego filtra, wyszukiwanej frazy lub zakresu dat co lista wyników, interfejs otrzymuje sprzeczne dane. Może wtedy wyświetlać wiele dostępnych stron, chociaż zapytanie pobierające rekordy zwraca mniej elementów albo nie zwraca ich wcale.

Istotna jest także kolejność operacji. Filtrowanie i zliczanie powinny odnosić się do tego samego zbioru, a limit i przesunięcie powinny być stosowane dopiero po ustaleniu warunków wyszukiwania oraz stabilnego sortowania. Jeżeli limit zostanie zastosowany przed filtrowaniem, wynik może zawierać mniej rekordów niż oczekiwano. Z kolei niejednoznaczne sortowanie, na przykład po kolumnie, w której wiele wierszy ma identyczną wartość, może powodować przeskakiwanie rekordów między stronami. Stabilność poprawia dodanie dodatkowego klucza rozstrzygającego, takiego jak unikalny identyfikator.

Wpływ filtrów, sortowania i zmian danych w czasie

Stronicowanie oparte na przesunięciu jest wrażliwe na zmiany zbioru danych podczas przeglądania. Jeżeli przed otwarciem drugiej strony zostaną dodane nowe rekordy na początku sortowanej listy, część wcześniejszych elementów przesunie się na dalsze pozycje. Użytkownik może zobaczyć powtórzony rekord albo pominąć rekord, który wcześniej znajdował się na granicy stron. Usunięcie rekordu działa odwrotnie i może doprowadzić do wyświetlenia strony bez zawartości, mimo że chwilę wcześniej ten sam numer strony był prawidłowy.

Po zmianie filtra lub sortowania aplikacja powinna wyzerować bieżący numer strony i rozpocząć prezentację od pierwszego fragmentu nowego zbioru. Kontrolka przejścia do następnej strony powinna być aktywna tylko wtedy, gdy istnieją kolejne wyniki. Często stosuje się również przekierowanie na ostatnią istniejącą stronę albo ponowne pobranie pierwszej strony, gdy odpowiedź dla żądanego numeru jest pusta. W rozwiązaniach wykorzystujących kursor zamiast offsetu przejście opiera się na wartości ostatniego odczytanego rekordu; także wtedy trzeba zachować zgodność kursora z filtrami i sortowaniem, ponieważ zmiana tych parametrów unieważnia jego znaczenie.

Sprawdzenie działania pagination w aplikacji

Diagnostyka powinna rozpocząć się od porównania parametrów wysyłanych przez interfejs z parametrami przyjmowanymi przez warstwę serwerową. Należy sprawdzić, czy numer strony i rozmiar strony są liczbami całkowitymi, czy wartości ujemne są odrzucane oraz czy zbyt duży numer strony jest obsługiwany przewidywalnie. Następnie warto porównać warunki zapytania z odpowiedzią zawierającą całkowitą liczbę wyników, liczbę stron, bieżący numer strony i listę rekordów. Szczególne znaczenie ma przypadek graniczny: liczba rekordów równa zero, liczba rekordów dokładnie równa wielokrotności rozmiaru strony oraz żądanie strony znajdującej się tuż za końcem zbioru.

Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i ich podzespołów, w tym diagnostyką problemów z oprogramowaniem odpowiedzialnym za wyświetlanie danych. Przy zgłoszeniu dotyczącym pustych stron pomocne jest przekazanie informacji, po jakiej operacji pojawia się problem, czy błąd występuje po zmianie filtra lub sortowania oraz czy dotyczy wszystkich danych, czy tylko określonego widoku. Takie dane pozwalają odróżnić błąd interfejsu od niezgodności w zapytaniu, nieprawidłowego przeliczania liczby stron albo zmiany danych zachodzącej w trakcie przeglądania listy.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę