fix 500 on empty list returned
This commit is contained in:
parent
b3e477b9cf
commit
30b17f94a3
|
@ -288,11 +288,7 @@ class ItfModel(models.Model):
|
||||||
ret = []
|
ret = []
|
||||||
page_no = options['page']
|
page_no = options['page']
|
||||||
list_size = options['count']
|
list_size = options['count']
|
||||||
try:
|
qset = kls.get_qset()
|
||||||
qset = kls.get_qset()
|
|
||||||
except:
|
|
||||||
qset = kls.objects.all()
|
|
||||||
|
|
||||||
|
|
||||||
search = options['search']
|
search = options['search']
|
||||||
if search != '':
|
if search != '':
|
||||||
|
@ -320,6 +316,11 @@ class ItfModel(models.Model):
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
hasResults = True
|
||||||
|
if qset.count() == 0:
|
||||||
|
hasResults = False
|
||||||
|
qset = kls.get_qset()
|
||||||
|
|
||||||
'''
|
'''
|
||||||
r0 = options['range'][0]
|
r0 = options['range'][0]
|
||||||
r1 = options['range'][1]
|
r1 = options['range'][1]
|
||||||
|
@ -343,6 +344,7 @@ class ItfModel(models.Model):
|
||||||
'has_next': results.has_next(),
|
'has_next': results.has_next(),
|
||||||
'has_previous': results.has_previous(),
|
'has_previous': results.has_previous(),
|
||||||
'page_no': page_no,
|
'page_no': page_no,
|
||||||
|
'has_results': hasResults,
|
||||||
'num_pages': paginator.num_pages,
|
'num_pages': paginator.num_pages,
|
||||||
'items': ret
|
'items': ret
|
||||||
}
|
}
|
||||||
|
@ -352,7 +354,7 @@ class ItfModel(models.Model):
|
||||||
'''
|
'''
|
||||||
Override this method in your model class to define a custom queryset instead of objects.all(), for instance, to always exclude unpublished items.
|
Override this method in your model class to define a custom queryset instead of objects.all(), for instance, to always exclude unpublished items.
|
||||||
'''
|
'''
|
||||||
raise NotImplementedError
|
return kls.objects.all()
|
||||||
|
|
||||||
def getField(fields, name):
|
def getField(fields, name):
|
||||||
for f in fields:
|
for f in fields:
|
||||||
|
|
|
@ -112,12 +112,20 @@ def render_object(request, module_slug):
|
||||||
}
|
}
|
||||||
object_list = tab.get_list(list_options)
|
object_list = tab.get_list(list_options)
|
||||||
|
|
||||||
if object_id == 0:
|
if object_id == 0:
|
||||||
object_id = object_list['items'][0]['id']
|
object_id = object_list['items'][0]['id']
|
||||||
|
|
||||||
obj = get_object_or_404(model_class, pk=object_id)
|
if object_list['has_results']:
|
||||||
item_data = obj.insidepage_dict(request)
|
obj = get_object_or_404(model_class, pk=object_id)
|
||||||
|
item_data = obj.insidepage_dict(request)
|
||||||
|
else: #Should be a better way to tell the template a search returned no result
|
||||||
|
obj = {
|
||||||
|
'get_title': 'No Results Found'
|
||||||
|
}
|
||||||
|
item_data = {
|
||||||
|
'html': 'The search query you entered did not return any results.'
|
||||||
|
}
|
||||||
|
|
||||||
context = RequestContext(request, {
|
context = RequestContext(request, {
|
||||||
'item': obj,
|
'item': obj,
|
||||||
'item_data': item_data,
|
'item_data': item_data,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user