def new_list(request): form = ItemForm(data=request.POST) if form.is_valid(): list_ = List.objects.create() Item.objects.create(text=request.POST['text'], list=list_) return redirect(list_) else: return render(request, 'create.html', {"form": form})
def view_list(request, list_id): list_ = List.objects.get(id=list_id) form = ItemForm() if request.method == 'POST': form = ItemForm(data=request.POST) if form.is_valid(): Item.objects.create(text=request.POST['text'], list=list_) return redirect(list_) return render(request, 'list.html', {'list': list_, 'form': form})
def test_form_renders_item_text_input(self): form = ItemForm() self.assertIn('placeholder="What you are selling"', form.as_p()) self.assertIn('class="form-control input-lg"', form.as_p())
def test_form_validation_for_blank_items(self): form = ItemForm(data={'text': ''}) self.assertFalse(form.is_valid()) self.assertEqual( form.errors['text'], [EMPTY_ITEM_ERROR])