A Django-sqlpaginator egy Django app, hogy nem lapszámozási és rendelés a nyers SQL egy modell.
Telepítés
Telepíteni a pypi
pip telepíteni Django-sqlpaginator
Ahhoz, hogy a legújabb (és valószínűleg nem stabil verzió) a git
pip telepíteni git + git: //github.com/bulkan/django-sqlpaginator.git
Akkor is meg kell telepíteni sqlparser
pip telepíteni git + git: //github.com/andialbrecht/sqlparse.git
A settings.py
& Nbsp; INSTALLED_APPS = (
& Nbsp; ...
& Nbsp; "sqlpaginator",
& Nbsp; ...
& Nbsp;)
Ez az !!
Használat
Elég sok ugyanaz, mint django.core.pagination.Paginator
Ha a következő modellek
& Nbsp; class 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; class Artist (models.Model):
& Nbsp; artistid = models.IntegerField (primary_key = True, db_column = u'ArtistId)
& Nbsp; name = models.TextField (db_column = u'Name ', üres = True)
és azt szeretnénk, hogy tördeléséhez albumain, majd belül érdekében;
& Nbsp; a sqlpaginator.paginator import SqlPaginator
& Nbsp; a modellek importálni Album
& Nbsp; def get_albums (kérésre page = 1):
& Nbsp; sql = "select * from% s"% Album._meta.db_table
& Nbsp; paginator = SqlPaginator (sql, Album, page = oldalon, order_by = 'title')
& Nbsp; próbálni:
& Nbsp; albumai = paginator.page (oldal)
& Nbsp; kivéve PageNotAnInteger:
& Nbsp; # Ha az oldal nem egész, adja első oldalon.
& Nbsp; albumai = paginator.page (1)
& Nbsp; kivéve EmptyPage:
& Nbsp; # Ha az oldal tartományon kívül (pl 9999), szállítani utolsó oldalon az eredmények.
& Nbsp; albumai = paginator.page (paginator.num_pages)
& Nbsp; visszatérő render_to_response ("albums_list.html", {'album': albumok})
A sablon albums_list.html
& Nbsp; {% az album album%}
& Nbsp; {# Minden "album" egy Album modell objektumot. #}
& Nbsp; {{album.title | felső}}
& Nbsp; {% endfor%}
& Nbsp;
& Nbsp;
& Nbsp; {% if albums.has_previous%}
& Nbsp; korábbi
& Nbsp; {% endif%}
& Nbsp;
& Nbsp; Oldal {{albums.number}} a {{}} albums.paginator.num_pages.
& Nbsp;
& Nbsp; {% if albums.has_next%}
& Nbsp; Tovább
& Nbsp; {% endif%}
& Nbsp;
& Nbsp;
követelmények :
- Python
- Django
Hozzászólás nem található