Skip to content

Instantly share code, notes, and snippets.

@andrellima
Created December 7, 2010 17:29
Show Gist options
  • Save andrellima/732101 to your computer and use it in GitHub Desktop.
Save andrellima/732101 to your computer and use it in GitHub Desktop.
views:
from django.core.paginator import Paginator, InvalidPage, EmptyPage
def requisicao_empresa(request):
empresa = Empresa.objects.all()
t = loader.get_template("empresa.html")
c = Context({'empresas' : empresa })
paginator = Paginator(empresa, 3) # Show 25 contacts per page
# Make sure page request is an int. If not, deliver first page.
try:
page = int(request.GET.get('page', '1'))
except ValueError:
page = 1
# If page request (9999) is out of range, deliver last page of results.
try:
enterprises = paginator.page(page)
except (EmptyPage, InvalidPage):
enterprises = paginator.page(paginator.num_pages)
return HttpResponse(t.render(c))
template:
<div class="pagination">
<span class="step-links">
{% if enterprises.has_previous %}
<a href="?page={{ enterprises.previous_page_number }}">previous</a>
{% endif %}
<span class="current">
Page {{ enterprises.number }} of {{ enterprises.paginator.num_pages }}.
</span>
{% if enterprises.has_next %}
<a href="?page={{ enterprises.next_page_number }}">next</a>
{% endif %}
</span>
</div>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment