diff options
author | Ask Solem <askh@modwheel.net> | 2009-03-17 15:08:56 +0100 |
---|---|---|
committer | Ask Solem Hoel <askh@opera.com> | 2009-03-17 15:08:56 +0100 |
commit | 86fa508407289814f81ce7a2c4c46055c55c2374 (patch) | |
tree | 68aa41357245410a443981c55620c0332a5e61a4 | |
parent | cbc39e303848aba5c3b691588d46db3e40d26cfb (diff) | |
download | chishop-86fa508407289814f81ce7a2c4c46055c55c2374.tar.bz2 chishop-86fa508407289814f81ce7a2c4c46055c55c2374.tar.xz chishop-86fa508407289814f81ce7a2c4c46055c55c2374.zip |
Raise HTTP 404 on missing projects
-rw-r--r-- | djangopypi/views.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/djangopypi/views.py b/djangopypi/views.py index fc4061d..b1323fb 100644 --- a/djangopypi/views.py +++ b/djangopypi/views.py | |||
@@ -30,7 +30,8 @@ POSSIBILITY OF SUCH DAMAGE. | |||
30 | 30 | ||
31 | """ | 31 | """ |
32 | 32 | ||
33 | from django.http import HttpResponse, HttpResponseBadRequest, QueryDict | 33 | from django.http import Http404, HttpResponse, HttpResponseBadRequest |
34 | from django.http import QueryDict | ||
34 | from django.shortcuts import render_to_response | 35 | from django.shortcuts import render_to_response |
35 | from djangopypi.models import Project | 36 | from djangopypi.models import Project |
36 | from djangopypi.forms import ProjectRegisterForm | 37 | from djangopypi.forms import ProjectRegisterForm |
@@ -92,8 +93,11 @@ def simple(request, template_name="djangopypi/simple.html"): | |||
92 | 93 | ||
93 | def show_links(request, dist_name, | 94 | def show_links(request, dist_name, |
94 | template_name="djangopypi/show_links.html"): | 95 | template_name="djangopypi/show_links.html"): |
95 | releases = Project.objects.get(name=dist_name) \ | 96 | try: |
96 | .releases.all().order_by('-version') | 97 | releases = Project.objects.get(name=dist_name) \ |
98 | .releases.all().order_by('-version') | ||
99 | except Project.DoesNotExist: | ||
100 | raise Http404 | ||
97 | 101 | ||
98 | context = RequestContext(request, { | 102 | context = RequestContext(request, { |
99 | "dist_name": dist_name, | 103 | "dist_name": dist_name, |
@@ -105,8 +109,11 @@ def show_links(request, dist_name, | |||
105 | 109 | ||
106 | def show_version(request, dist_name, version, | 110 | def show_version(request, dist_name, version, |
107 | template_name="djangopypi/show_version.html"): | 111 | template_name="djangopypi/show_version.html"): |
108 | release = Project.objects.get(name=dist_name).releases \ | 112 | try: |
109 | .get(version=version) | 113 | release = Project.objects.get(name=dist_name).releases \ |
114 | .get(version=version) | ||
115 | except Project.DoesNotExist: | ||
116 | raise Http404() | ||
110 | 117 | ||
111 | context = RequestContext(request, { | 118 | context = RequestContext(request, { |
112 | "dist_name": dist_name, | 119 | "dist_name": dist_name, |