Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed #3895 -- Added ability to customize the context variable in the…

… archive_index generic view. Thanks to marco.giusti@gmail.com and toke-django@toke.de.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@6157 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 2bec822ff345ed68047d618f707bb2765fad7e5f 1 parent 70e5dce
@freakboy3742 freakboy3742 authored
Showing with 10 additions and 3 deletions.
  1. +2 −2 django/views/generic/date_based.py
  2. +8 −1 docs/generic_views.txt
View
4 django/views/generic/date_based.py
@@ -10,7 +10,7 @@
def archive_index(request, queryset, date_field, num_latest=15,
template_name=None, template_loader=loader,
extra_context=None, allow_empty=False, context_processors=None,
- mimetype=None, allow_future=False):
+ mimetype=None, allow_future=False, template_object_name='latest'):
"""
Generic top-level archive of date-based objects.
@@ -39,7 +39,7 @@ def archive_index(request, queryset, date_field, num_latest=15,
t = template_loader.get_template(template_name)
c = RequestContext(request, {
'date_list' : date_list,
- 'latest' : latest,
+ template_object_name : latest,
}, context_processors)
for key, value in extra_context.items():
if callable(value):
View
9 docs/generic_views.txt
@@ -201,6 +201,9 @@ a date in the *future* are not included unless you set ``allow_future`` to
specified in ``date_field`` is greater than the current date/time. By
default, this is ``False``.
+ * ``template_object_name``: Designates the name of the template variable
+ to use in the template context. By default, this is ``'latest'``.
+
**Template name:**
If ``template_name`` isn't specified, this view will use the template
@@ -221,9 +224,13 @@ In addition to ``extra_context``, the template's context will be:
years that have objects available according to ``queryset``. These are
ordered in reverse. This is equivalent to
``queryset.dates(date_field, 'year')[::-1]``.
+
* ``latest``: The ``num_latest`` objects in the system, ordered descending
by ``date_field``. For example, if ``num_latest`` is ``10``, then
- ``latest`` will be a list of the latest 10 objects in ``queryset``.
+ ``latest`` will be a list of the latest 10 objects in ``queryset``. This
+ variable's name depends on the ``template_object_name`` parameter, which
+ is ``'latest'`` by default. If ``template_object_name`` is ``'foo'``,
+ this variable's name will be ``foo``.
.. _RequestContext docs: ../templates_python/#subclassing-context-requestcontext
Please sign in to comment.
Something went wrong with that request. Please try again.