diff options
| author | Claude Paroz <claude@2xlibre.net> | 2013-01-25 20:50:46 +0100 |
|---|---|---|
| committer | Claude Paroz <claude@2xlibre.net> | 2013-01-25 20:50:46 +0100 |
| commit | ebb504db692cac496f4f45762d1d14644c9fa6fa (patch) | |
| tree | 1a1ac132d765f6e93c390fe532f9b39d1edee096 /django/forms/forms.py | |
| parent | ce27fb198dcce5dad47de83fc81119d3bb6567ce (diff) | |
Moved has_changed logic from widget to form field
Refs #16612. Thanks Aymeric Augustin for the suggestion.
Diffstat (limited to 'django/forms/forms.py')
| -rw-r--r-- | django/forms/forms.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/django/forms/forms.py b/django/forms/forms.py index 3299c2becc..f532391296 100644 --- a/django/forms/forms.py +++ b/django/forms/forms.py @@ -341,7 +341,13 @@ class BaseForm(object): hidden_widget = field.hidden_widget() initial_value = hidden_widget.value_from_datadict( self.data, self.files, initial_prefixed_name) - if field.widget._has_changed(initial_value, data_value): + if hasattr(field.widget, '_has_changed'): + warnings.warn("The _has_changed method on widgets is deprecated," + " define it at field level instead.", + PendingDeprecationWarning, stacklevel=2) + if field.widget._has_changed(initial_value, data_value): + self._changed_data.append(name) + elif field._has_changed(initial_value, data_value): self._changed_data.append(name) return self._changed_data changed_data = property(_get_changed_data) |
