Advertisement
Foxscotch

less unfortunate code

Oct 16th, 2015
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.17 KB | None | 0 0
  1. @require_http_methods(['GET'])
  2. def list_filter(request):
  3.     by_what = request.GET.get('by', '')
  4.     for_what = request.GET.getlist('for', '')
  5.     if by_what == 'date':
  6.         try:
  7.             dates = []
  8.             for date in for_what:
  9.                 dates.append(datetime.strptime(date, '%m/%d/%Y'))
  10.             rejections = Rejection.objects.filter(date__in=dates)
  11.             title = get_title('Filter by {0} on {1}'.format(by_what, for_what[0]))
  12.             context = {'rejections': rejections,
  13.                        'title': title}
  14.             return render(request, 'defective/taglist.html', context)
  15.         except ValueError:
  16.             return HttpResponseBadRequest('Invalid date format')
  17.     elif by_what in ['plant',  'model',   'part',   'defect',   'qty',
  18.                      'shift', 'station', 'rej_by', 'location', 'dispo']:
  19.         rejections = Rejection.objects.filter(**{'{0}__in'.format(by_what): for_what})
  20.         title = get_title('Filter by {0} for {1}'.format(by_what, ', '.join(for_what))
  21.         context = {'rejections': rejections,
  22.                        'title': title}
  23.         return render(request, 'defective/taglist.html', context)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement