Fixed #3170: added first_on_page and last_on_page arguments to paginated generic views. Thanks, Grimboy.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@4591 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Jacob Kaplan-Moss 2007-02-26 04:53:44 +00:00
parent 530409369f
commit b7fa37f9b2
2 changed files with 14 additions and 0 deletions

View File

@ -33,6 +33,12 @@ def object_list(request, queryset, paginate_by=None, page=None,
number of pages, total
hits
number of objects, total
last_on_page
the result number of the last of object in the
object_list (1-indexed)
first_on_page
the result number of the first object in the
object_list (1-indexed)
"""
if extra_context is None: extra_context = {}
queryset = queryset._clone()
@ -57,6 +63,8 @@ def object_list(request, queryset, paginate_by=None, page=None,
'page': page,
'next': page + 1,
'previous': page - 1,
'last_on_page': paginator.last_on_page(page - 1),
'first_on_page': paginator.first_on_page(page - 1),
'pages': paginator.pages,
'hits' : paginator.hits,
}, context_processors)

View File

@ -752,6 +752,12 @@ If the results are paginated, the context will contain these extra variables:
* ``previous``: The previous page number, as an integer. This is 1-based.
* `last_on_page`: **New in Django development version** The number of the
last result on the current page. This is 1-based.
* `first_on_page`: **New in Django development version** The number of the
first result on the current page. This is 1-based.
* ``pages``: The total number of pages, as an integer.
* ``hits``: The total number of objects across *all* pages, not just this