1
0
mirror of https://github.com/django/django.git synced 2025-10-25 14:46:09 +00:00

Fixed #11160 - Ensure full_clean is called from non_form_errors

Updated FormSet.non_form_errors() to ensure full_clean() has
been called before returning the errors.
This commit is contained in:
Senko Rasic
2013-05-18 13:44:27 +02:00
parent 566e284c56
commit 493aca453a
2 changed files with 21 additions and 4 deletions

View File

@@ -250,9 +250,9 @@ class BaseFormSet(object):
form -- i.e., from formset.clean(). Returns an empty ErrorList if there
are none.
"""
if self._non_form_errors is not None:
return self._non_form_errors
return self.error_class()
if self._non_form_errors is None:
self.full_clean()
return self._non_form_errors
@property
def errors(self):
@@ -291,9 +291,12 @@ class BaseFormSet(object):
def full_clean(self):
"""
Cleans all of self.data and populates self._errors.
Cleans all of self.data and populates self._errors and
self._non_form_errors.
"""
self._errors = []
self._non_form_errors = self.error_class()
if not self.is_bound: # Stop further processing.
return
for i in range(0, self.total_form_count()):