Made use of property decorator in formsets.py
This commit is contained in:
parent
ee1b3e2a3a
commit
39aa8901e1
|
@ -71,7 +71,8 @@ class BaseFormSet(object):
|
||||||
return True
|
return True
|
||||||
__nonzero__ = __bool__ # Python 2
|
__nonzero__ = __bool__ # Python 2
|
||||||
|
|
||||||
def _management_form(self):
|
@property
|
||||||
|
def management_form(self):
|
||||||
"""Returns the ManagementForm instance for this FormSet."""
|
"""Returns the ManagementForm instance for this FormSet."""
|
||||||
if self.is_bound:
|
if self.is_bound:
|
||||||
form = ManagementForm(self.data, auto_id=self.auto_id, prefix=self.prefix)
|
form = ManagementForm(self.data, auto_id=self.auto_id, prefix=self.prefix)
|
||||||
|
@ -84,7 +85,6 @@ class BaseFormSet(object):
|
||||||
MAX_NUM_FORM_COUNT: self.max_num
|
MAX_NUM_FORM_COUNT: self.max_num
|
||||||
})
|
})
|
||||||
return form
|
return form
|
||||||
management_form = property(_management_form)
|
|
||||||
|
|
||||||
def total_form_count(self):
|
def total_form_count(self):
|
||||||
"""Returns the total number of forms in this FormSet."""
|
"""Returns the total number of forms in this FormSet."""
|
||||||
|
@ -140,17 +140,18 @@ class BaseFormSet(object):
|
||||||
self.add_fields(form, i)
|
self.add_fields(form, i)
|
||||||
return form
|
return form
|
||||||
|
|
||||||
def _get_initial_forms(self):
|
@property
|
||||||
|
def initial_forms(self):
|
||||||
"""Return a list of all the initial forms in this formset."""
|
"""Return a list of all the initial forms in this formset."""
|
||||||
return self.forms[:self.initial_form_count()]
|
return self.forms[:self.initial_form_count()]
|
||||||
initial_forms = property(_get_initial_forms)
|
|
||||||
|
|
||||||
def _get_extra_forms(self):
|
@property
|
||||||
|
def extra_forms(self):
|
||||||
"""Return a list of all the extra forms in this formset."""
|
"""Return a list of all the extra forms in this formset."""
|
||||||
return self.forms[self.initial_form_count():]
|
return self.forms[self.initial_form_count():]
|
||||||
extra_forms = property(_get_extra_forms)
|
|
||||||
|
|
||||||
def _get_empty_form(self, **kwargs):
|
@property
|
||||||
|
def empty_form(self, **kwargs):
|
||||||
defaults = {
|
defaults = {
|
||||||
'auto_id': self.auto_id,
|
'auto_id': self.auto_id,
|
||||||
'prefix': self.add_prefix('__prefix__'),
|
'prefix': self.add_prefix('__prefix__'),
|
||||||
|
@ -160,19 +161,19 @@ class BaseFormSet(object):
|
||||||
form = self.form(**defaults)
|
form = self.form(**defaults)
|
||||||
self.add_fields(form, None)
|
self.add_fields(form, None)
|
||||||
return form
|
return form
|
||||||
empty_form = property(_get_empty_form)
|
|
||||||
|
|
||||||
# Maybe this should just go away?
|
# Maybe this should just go away?
|
||||||
def _get_cleaned_data(self):
|
@property
|
||||||
|
def cleaned_data(self):
|
||||||
"""
|
"""
|
||||||
Returns a list of form.cleaned_data dicts for every form in self.forms.
|
Returns a list of form.cleaned_data dicts for every form in self.forms.
|
||||||
"""
|
"""
|
||||||
if not self.is_valid():
|
if not self.is_valid():
|
||||||
raise AttributeError("'%s' object has no attribute 'cleaned_data'" % self.__class__.__name__)
|
raise AttributeError("'%s' object has no attribute 'cleaned_data'" % self.__class__.__name__)
|
||||||
return [form.cleaned_data for form in self.forms]
|
return [form.cleaned_data for form in self.forms]
|
||||||
cleaned_data = property(_get_cleaned_data)
|
|
||||||
|
|
||||||
def _get_deleted_forms(self):
|
@property
|
||||||
|
def deleted_forms(self):
|
||||||
"""
|
"""
|
||||||
Returns a list of forms that have been marked for deletion. Raises an
|
Returns a list of forms that have been marked for deletion. Raises an
|
||||||
AttributeError if deletion is not allowed.
|
AttributeError if deletion is not allowed.
|
||||||
|
@ -191,9 +192,9 @@ class BaseFormSet(object):
|
||||||
if self._should_delete_form(form):
|
if self._should_delete_form(form):
|
||||||
self._deleted_form_indexes.append(i)
|
self._deleted_form_indexes.append(i)
|
||||||
return [self.forms[i] for i in self._deleted_form_indexes]
|
return [self.forms[i] for i in self._deleted_form_indexes]
|
||||||
deleted_forms = property(_get_deleted_forms)
|
|
||||||
|
|
||||||
def _get_ordered_forms(self):
|
@property
|
||||||
|
def ordered_forms(self):
|
||||||
"""
|
"""
|
||||||
Returns a list of form in the order specified by the incoming data.
|
Returns a list of form in the order specified by the incoming data.
|
||||||
Raises an AttributeError if ordering is not allowed.
|
Raises an AttributeError if ordering is not allowed.
|
||||||
|
@ -228,7 +229,6 @@ class BaseFormSet(object):
|
||||||
# Return a list of form.cleaned_data dicts in the order specified by
|
# Return a list of form.cleaned_data dicts in the order specified by
|
||||||
# the form data.
|
# the form data.
|
||||||
return [self.forms[i[0]] for i in self._ordering]
|
return [self.forms[i[0]] for i in self._ordering]
|
||||||
ordered_forms = property(_get_ordered_forms)
|
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def get_default_prefix(cls):
|
def get_default_prefix(cls):
|
||||||
|
@ -244,14 +244,14 @@ class BaseFormSet(object):
|
||||||
return self._non_form_errors
|
return self._non_form_errors
|
||||||
return self.error_class()
|
return self.error_class()
|
||||||
|
|
||||||
def _get_errors(self):
|
@property
|
||||||
|
def errors(self):
|
||||||
"""
|
"""
|
||||||
Returns a list of form.errors for every form in self.forms.
|
Returns a list of form.errors for every form in self.forms.
|
||||||
"""
|
"""
|
||||||
if self._errors is None:
|
if self._errors is None:
|
||||||
self.full_clean()
|
self.full_clean()
|
||||||
return self._errors
|
return self._errors
|
||||||
errors = property(_get_errors)
|
|
||||||
|
|
||||||
def _should_delete_form(self, form):
|
def _should_delete_form(self, form):
|
||||||
"""
|
"""
|
||||||
|
@ -332,14 +332,14 @@ class BaseFormSet(object):
|
||||||
"""
|
"""
|
||||||
return self.forms and self.forms[0].is_multipart()
|
return self.forms and self.forms[0].is_multipart()
|
||||||
|
|
||||||
def _get_media(self):
|
@property
|
||||||
|
def media(self):
|
||||||
# All the forms on a FormSet are the same, so you only need to
|
# All the forms on a FormSet are the same, so you only need to
|
||||||
# interrogate the first form for media.
|
# interrogate the first form for media.
|
||||||
if self.forms:
|
if self.forms:
|
||||||
return self.forms[0].media
|
return self.forms[0].media
|
||||||
else:
|
else:
|
||||||
return Media()
|
return Media()
|
||||||
media = property(_get_media)
|
|
||||||
|
|
||||||
def as_table(self):
|
def as_table(self):
|
||||||
"Returns this formset rendered as HTML <tr>s -- excluding the <table></table>."
|
"Returns this formset rendered as HTML <tr>s -- excluding the <table></table>."
|
||||||
|
|
Loading…
Reference in New Issue