Skip to content

Commit

Permalink
Fixed #10898 -- Corrected minor error in conditional view processing …
Browse files Browse the repository at this point in the history
…example. Thanks to Tomasz Elendt for the report.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@10642 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information
freakboy3742 committed Apr 28, 2009
1 parent 6312de0 commit 0c1d38b
Showing 1 changed file with 5 additions and 7 deletions.
12 changes: 5 additions & 7 deletions docs/topics/conditional-view-processing.txt
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,10 @@ The ``condition`` decorator's signature looks like this::
The two functions, to compute the ETag and the last modified time, will be
passed the incoming ``request`` object and the same parameters, in the same
order, as the view function they are helping to wrap. The function passed
``last_modified`` should return a standard datetime value specifying the last
time the resource was modified, or ``None`` if the resource doesn't exist. The
function passed to the ``etag`` decorator should return a string representing
the `Etag`_ for the resource, or ``None`` if it doesn't exist.
``last_modified_func`` should return a standard datetime value specifying the
last time the resource was modified, or ``None`` if the resource doesn't
exist. The function passed to the ``etag`` decorator should return a string
representing the `Etag`_ for the resource, or ``None`` if it doesn't exist.

Using this feature usefully is probably best explained with an example.
Suppose you have this pair of models, representing a simple blog system::
Expand All @@ -83,10 +83,8 @@ add a new blog entry, you can compute the last modified time very quickly. You
need the latest ``published`` date for every entry associated with that blog.
One way to do this would be::

from django.db.models import Max

def latest_entry(request, blog_id):
return Entry.objects.filter(blog=blog_id).aggregate(Max("published"))
return Entry.objects.filter(blog=blog_id).latest("published").published

You can then use this function to provide early detection of an unchanged page
for your front page view::
Expand Down

0 comments on commit 0c1d38b

Please sign in to comment.