django-sqlpaginator bir model üzerinde ham SQL kullanarak sayfalama ve sıralama yapar Django uygulaması.
Kurulum
Pypi yüklemek için
Django-sqlpaginator yüklemek pip
Git den son (ve muhtemelen olmayan kararlı sürümü) almak için
budala budala + yüklemek pip: //github.com/bulkan/django-sqlpaginator.git
Ayrıca sqlparser yüklemeniz gerekir
budala budala + yüklemek pip: //github.com/andialbrecht/sqlparse.git
Settings.py içinde
& Nbsp; INSTALLED_APPS = (
& Nbsp; ...
& Nbsp; 'sqlpaginator'
& Nbsp; ...
& Nbsp;)
Budur !!
Kullanım
Django.core.pagination.Paginator olarak hemen hemen aynı
Aşağıdaki modelleri varsa
& Nbsp; sınıf Albüm (models.Model):
& Nbsp; ALBUMID = models.IntegerField (primary_key = true, db_column = u'AlbumId ')
& Nbsp, başlıkta adı geçen = models.TextField (db_column = u'Title ')
& Nbsp; ArtistID = models.IntegerField (db_column = u'ArtistId ')
& Nbsp; sınıf Artist (models.Model):
& Nbsp; ArtistID = models.IntegerField (primary_key = true, db_column = u'ArtistId ')
& Nbsp; name = models.TextField (db_column = u'Name ', boş = true)
ve sonra bir görünüm içinde, Albümleri paginate istiyorum;
& Nbsp; sqlpaginator.paginator ithalat SqlPaginator gelen
& Nbsp; modellerden Albüm ithal
& Nbsp; def get_albums (istek, sayfa = 1):
& Nbsp; sql =% Album._meta.db_table "% s select * from"
& Nbsp; paginator = SqlPaginator (sql, Albüm, sayfa = sayfa, order_by = 'başlığı')
& Nbsp; deneyin:
& Nbsp; albümleri = paginator.page (sayfa)
& Nbsp; PageNotAnInteger hariç:
& Nbsp; sayfa bir tamsayı değil # değilse, ilk sayfayı teslim.
& Nbsp; albümleri = paginator.page (1)
& Nbsp; EmptyPage hariç:
& Nbsp; sayfa aralığı (örneğin 9999) dışında # Eğer, sonuçların son sayfayı teslim.
& Nbsp; albümleri = paginator.page (paginator.num_pages)
& Nbsp; dönüş render_to_response ('albums_list.html', {'albümleri': albüm})
Şablon albums_list.html içinde
& Nbsp; {albümleri% Albümün%}
& Nbsp; {# Her "albümü" Bir Albüm modeli nesnesidir. #}
& Nbsp; {{album.title | üst}}
& Nbsp; {% endfor%}
& Nbsp;
& Nbsp;
& Nbsp; {% eğer albums.has_previous%}
& Nbsp; "Sayfa = {{}} albums.previous_page_number" a href => önceki
& Nbsp; {% endif%}
& Nbsp;
& Nbsp; Sayfa {{albums.number}} {{}} albums.paginator.num_pages arasında.
& Nbsp;
& Nbsp; {% eğer albums.has_next%}
& Nbsp; "Sayfa = {{}} albums.next_page_number" a href => Bir sonraki
& Nbsp; {% endif%}
& Nbsp;
& Nbsp;
Gereksinimler :
- Python
- Django
Yorum Bulunamadı