Permalink
Browse files

Fixed #4867. FormSet.is_valid() now returns False when the FormSet is…

… not bound. Thanks John Shaffer.

git-svn-id: http://code.djangoproject.com/svn/django/branches/newforms-admin@6052 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
1 parent 976acdc commit ff2a2884a15ddd23d7414497341905c56023abac @jkocherhans jkocherhans committed Sep 7, 2007
Showing with 7 additions and 1 deletion.
  1. +3 −1 django/newforms/formsets.py
  2. +4 −0 tests/regressiontests/forms/formsets.py
@@ -153,6 +153,8 @@ def add_prefix(self, index):
return '%s-%s' % (self.prefix, index)
def is_valid(self):
+ if not self.is_bound:
+ return False
self.full_clean()
return self._is_valid
@@ -175,4 +177,4 @@ def all_valid(formsets):
for formset in formsets:
if not formset.is_valid():
return False
- return True
+ return True
@@ -48,6 +48,10 @@
>>> formset.cleaned_data
[{'votes': 100, 'choice': u'Calexico'}]
+If a FormSet was not passed any data, its is_valid method should return False.
+>>> formset = ChoiceFormSet()
+>>> formset.is_valid()
+False
FormSet instances can also have an error attribute if validation failed for
any of the forms.

0 comments on commit ff2a288

Please sign in to comment.