def search(request): form = SearchForm(data=request.POST,initial={ 'choice_field':request.POST['choice_field'] }) if form.is_valid(): search_terms = request.POST['search_terms'].lower().split() search_terms.sort() search_results_order = request.POST['choice_field'] search_terms_url = '_'.join(search_terms + [search_results_order]) search_terms_str = ' '.join(search_terms) try: search = Search(search_terms = search_terms_str) search.full_clean() search.save() except ValidationError: pass return redirect('get_search_results',search_terms_url) else: return render(request, 'home.html',{'form':form})
def test_cannot_save_empty_search(self): search = Search(search_terms = '') with self.assertRaises(ValidationError): search.save() search.full_clean()