Django Sayfalama Mantığı


Sayfalama

Web sayfalarında gezinirken tüm bilgilerin tek bir sayfada bulunmadığını görmüş olmalısınız. Örneğin bir alışveriş sitesinde aradığınız ürünlerin listesi mantıklı şekilde bölümlenir ve listenin altında “Önceki Sayfa” ve “Sonrası Sayfa” şeklinde köprüler bulunur.

Bilgilerin bu şekilde bölümlenmesine sayfalama yada sayfalandırma(pagination) diyoruz. Sayfalama yapılmasaydı Google’da bir arama yaptığınızda milyonlarca (belkide milyarlarca) sonucun tek bir sayfada gösterilmesi gerekecekti , bu da imkansız bir şey. Django sayfalamayı otomatik yapmaktadır. Önce mantığını anlıyalım mantığını anladıktan sonra django templateler üzerinde rahatlıkla kullanabilceksiniz.


pagination-animation

Öncelikle kabuğu açalım.

  • Bir veritabanı sembolü eden bir liste yapısı oluşturalım.

  • Her sayfada 2 adet isim bulanacağını beliryelim.

  • Toplam elaman sayısı  :

  • Toplam sayfa sayısı: her sayfada 2 eleman olacak dedik o halde 3×2 = 6 , dolasıyla 3 sayfa olması gerekiyor.

  • Sayfa aralığı:

  • Birinci sayfa :

  • Birinci sayfadakı elemanlar :

  • Birinci sayfadan sonrası var mı ?

  • Üçüncü sayfa tanımlayalım.

  • Üçüncü sayfadan önceki var mı ?

  • Üçüncü sayfadan başka sayfalar var mı?

  • Birinci sayfanın ilk elemanın indisi :

  • Birinci sayfanın son elemanın indisi :

Sayfa numaralı sıfırdan değil, birden başlar eğer ” sayfalar.page(0) ” girerseniz hata atar. Aynı zamanda son sayfadan fazla sayfa isterseniz ” sayfalar.page(4) ” yine hata atacaktır.

  • Örnek boş sayfa kontrolü :

 

Yabancı kaynak : https://docs.djangoproject.com/ja/1.10/topics/pagination/

 

 

Django Sayfalama Mantığı

Giriş Yap

Hoşgeldin, sefa getirdin :)

Şifre Sıfırla

Şifreni bidaha unutma lütfen :)

Geri git :
Giriş Yap