You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
810 B
19 lines
810 B
from django.http import Http404 |
|
from django.shortcuts import render_to_response |
|
|
|
########### |
|
# CHOICES # |
|
########### |
|
|
|
def choice_list(request, app_label, module_name, field_name, models): |
|
m, f = lookup_field(app_label, module_name, field_name, models) |
|
return render_to_response('databrowse/choice_list.html', {'model': m, 'field': f}) |
|
|
|
def choice_detail(request, app_label, module_name, field_name, field_val, models): |
|
m, f = lookup_field(app_label, module_name, field_name, models) |
|
try: |
|
label = dict(f.field.choices)[field_val] |
|
except KeyError: |
|
raise Http404('Invalid choice value given') |
|
obj_list = m.objects(**{f.field.name: field_val}) |
|
return render_to_response('databrowse/choice_detail.html', {'model': m, 'field': f, 'value': label, 'object_list': obj_list})
|
|
|