Django-sqlpaginator ay isang Django app na gumagana ang pagbilang ng pahina at pag-order gamit ang raw SQL sa isang Model.
Pag-install
Upang i-install mula sa pypi
buto ng bungang-kahoy-install Django-sqlpaginator
Upang makuha ang pinakabagong (at posibleng hindi matatag na bersyon) mula sa Git
buto ng bungang-kahoy-install ng Git + Git: //github.com/bulkan/django-sqlpaginator.git
Kailangan mo ring i-install sqlparser
buto ng bungang-kahoy-install ng Git + Git: //github.com/andialbrecht/sqlparse.git
Sa settings.py
& Nbsp; INSTALLED_APPS = (
& Nbsp; ...
& Nbsp; 'sqlpaginator',
& Nbsp; ...
& Nbsp;)
Iyon ito !!
Paggamit
Halos kapareho ng django.core.pagination.Paginator
Kung mayroon kang mga sumusunod na mga modelo
& Nbsp; klase Album (models.Model):
& Nbsp; ALBUMID = models.IntegerField (primary_key = True, db_column = u'AlbumId ')
& Nbsp; title = models.TextField (db_column = u'Title ')
& Nbsp; artistid = models.IntegerField (db_column = u'ArtistId ')
& Nbsp; klase Artist (models.Model):
& Nbsp; artistid = models.IntegerField (primary_key = True, db_column = u'ArtistId ')
& Nbsp; name = models.TextField (db_column = u'Name ', blangko = True)
at gusto mong i-paginate sa Albums, pagkatapos ay sa loob ng tanawin;
& Nbsp; mula sqlpaginator.paginator import SqlPaginator
& Nbsp; mula sa mga modelo-import Album
& Nbsp; def get_albums (kahilingan, page = 1):
& Nbsp; SQL = "piliin ang * mula sa% s"% Album._meta.db_table
& Nbsp; paginator = SqlPaginator (SQL, Album, page = page, order_by = 'title')
& Nbsp; subukan ang:
& Nbsp; mga album = paginator.page (pahina)
& Nbsp; maliban PageNotAnInteger:
& Nbsp; # Kung ang pahinang ito ay hindi isang integer, maghatid sa unang pahina.
& Nbsp; mga album = paginator.page (1)
& Nbsp; maliban EmptyPage:
& Nbsp; # Kung ang pahinang Labas sa saklaw (hal 9999), maghatid huling pahina ng mga resulta.
& Nbsp; mga album = paginator.page (paginator.num_pages)
& Nbsp; return render_to_response ('albums_list.html', {'album: album})
Sa template albums_list.html
& Nbsp; {% para sa album sa album%}
& Nbsp; {# Ang bawat "album" ay isang Album modelo ng object. #}
& Nbsp; {{album.title | upper}}
& Nbsp; {% endfor%}
& Nbsp;
& Nbsp;
& Nbsp; {% kung albums.has_previous%}
& Nbsp; <"? Page = {{albums.previous_page_number}}" a href => nakaraang
& Nbsp; {% endif%}
& Nbsp;
& Nbsp; Pahina {{albums.number}} ng {{albums.paginator.num_pages}}.
& Nbsp;
& Nbsp; {% kung albums.has_next%}
& Nbsp; <"? Page = {{albums.next_page_number}}" a href => susunod na
& Nbsp; {% endif%}
& Nbsp;
& Nbsp;
Mga Kinakailangan :
- Python
- Django
Mga Komento hindi natagpuan