0001-return-404-if-checking-an-object-that-doesn-t-exist-.patch
hobo/environment/views.py | ||
---|---|---|
3 | 3 | |
4 | 4 |
from django.conf import settings |
5 | 5 |
from django.core.urlresolvers import reverse_lazy |
6 |
from django.http import HttpResponse |
|
6 |
from django.http import HttpResponse, Http404 |
|
7 |
from django.shortcuts import get_object_or_404 |
|
7 | 8 |
from django.views.generic.base import TemplateView |
8 | 9 |
from django.views.generic.edit import CreateView, UpdateView, DeleteView |
9 | 10 | |
... | ... | |
136 | 137 |
return None |
137 | 138 | |
138 | 139 |
def operational_check_view(request, service, slug, **kwargs): |
139 |
if service == 'wcs': |
|
140 |
object = Wcs.objects.get(slug=slug) |
|
141 |
elif service == 'authentic': |
|
142 |
object = Authentic.objects.get(slug=slug) |
|
143 |
elif service == 'passerelle': |
|
144 |
object = Passerelle.objects.get(slug=slug) |
|
140 |
klass = { |
|
141 |
'wcs': Wcs, |
|
142 |
'authentic': Authentic, |
|
143 |
'passerelle': Passerelle |
|
144 |
}.get(service) |
|
145 | ||
146 |
if klass is None: |
|
147 |
raise Http404 |
|
148 | ||
149 |
object = get_object_or_404(klass, slug=slug) |
|
145 | 150 |
object.check_operational() |
146 | 151 |
response = HttpResponse(content_type='application/json') |
147 | 152 |
json.dump({'operational': object.is_operational()}, response) |
148 |
- |