]> git.openstreetmap.org Git - osqa.git/commitdiff
Raise 404 when the page number does not exist.
authorhernani <hernani@0cfe37f9-358a-4d5e-be75-b63607b5c754>
Tue, 11 May 2010 00:06:04 +0000 (00:06 +0000)
committerhernani <hernani@0cfe37f9-358a-4d5e-be75-b63607b5c754>
Tue, 11 May 2010 00:06:04 +0000 (00:06 +0000)
git-svn-id: http://svn.osqa.net/svnroot/osqa/trunk@207 0cfe37f9-358a-4d5e-be75-b63607b5c754

forum/views/decorators.py

index 141887a3e0f7cfdc8a4402c04205ec1ca35ed276..f9929ffacde158b7175c91f441d139f160e02853 100644 (file)
@@ -1,6 +1,6 @@
-from django.http import HttpResponse, HttpResponseRedirect\r
+from django.http import HttpResponse, HttpResponseRedirect, Http404\r
 from django.utils import simplejson\r
-from django.core.paginator import Paginator\r
+from django.core.paginator import Paginator, EmptyPage\r
 from django.shortcuts import render_to_response\r
 from django.template import RequestContext\r
 from django.utils.translation import ungettext, ugettext as _\r
@@ -29,7 +29,11 @@ def list(paginate, default_page_size):
             big_list = context[paginate]\r
             paginator = Paginator(big_list, pagesize)\r
 \r
-            page_obj = paginator.page(page)\r
+            try:\r
+                page_obj = paginator.page(page)\r
+            except EmptyPage:\r
+                raise Http404()\r
+                \r
             context[paginate] = page_obj.object_list.lazy()\r
 \r
             base_path = context.get('base_path', None) or request.path\r