new save FBVs, methods & test methods
This commit is contained in:
@@ -32,4 +32,7 @@ class ExistingListItemForm(ItemForm):
|
||||
text = self.cleaned_data["text"]
|
||||
if self.instance.list.item_set.filter(text=text).exists():
|
||||
raise forms.ValidationError(DUPLICATE_ITEM_ERROR)
|
||||
return text
|
||||
return text
|
||||
|
||||
def save(self):
|
||||
return forms.models.ModelForm.save(self)
|
||||
|
||||
@@ -49,3 +49,10 @@ class ExistingListItemFormTest(TestCase):
|
||||
form = ExistingListItemForm(for_list=list_, data={"text": "twins, basil"})
|
||||
self.assertFalse(form.is_valid())
|
||||
self.assertEqual(form.errors["text"], [DUPLICATE_ITEM_ERROR])
|
||||
|
||||
def test_form_save(self):
|
||||
mylist = List.objects.create()
|
||||
form = ExistingListItemForm(for_list=mylist, data={"text": "howdy"})
|
||||
self.assertTrue(form.is_valid())
|
||||
new_item = form.save()
|
||||
self.assertEqual(new_item, Item.objects.get())
|
||||
|
||||
@@ -22,7 +22,7 @@ def view_list(request, list_id):
|
||||
if request.method == "POST":
|
||||
form = ExistingListItemForm(for_list=our_list, data=request.POST)
|
||||
if form.is_valid():
|
||||
form.save(for_list=our_list)
|
||||
form.save()
|
||||
return redirect(our_list)
|
||||
return render(request, 'apps/dashboard/list.html', {'list': our_list, "form": form})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user