mirror of
https://github.com/django/django.git
synced 2025-07-07 19:29:12 +00:00
[soc2009/model-validation] More fields migrated to split to_python/validate
git-svn-id: http://code.djangoproject.com/svn/django/branches/soc2009/model-validation@10907 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
7506471585
commit
92934650f6
@ -698,12 +698,13 @@ class TypedChoiceField(ChoiceField):
|
|||||||
self.empty_value = kwargs.pop('empty_value', '')
|
self.empty_value = kwargs.pop('empty_value', '')
|
||||||
super(TypedChoiceField, self).__init__(*args, **kwargs)
|
super(TypedChoiceField, self).__init__(*args, **kwargs)
|
||||||
|
|
||||||
def clean(self, value):
|
def to_python(self, value):
|
||||||
"""
|
"""
|
||||||
Validate that the value is in self.choices and can be coerced to the
|
Validate that the value is in self.choices and can be coerced to the
|
||||||
right type.
|
right type.
|
||||||
"""
|
"""
|
||||||
value = super(TypedChoiceField, self).clean(value)
|
value = super(TypedChoiceField, self).to_python(value)
|
||||||
|
super(TypedChoiceField, self).validate(value)
|
||||||
if value == self.empty_value or value in EMPTY_VALUES:
|
if value == self.empty_value or value in EMPTY_VALUES:
|
||||||
return self.empty_value
|
return self.empty_value
|
||||||
try:
|
try:
|
||||||
@ -711,6 +712,9 @@ class TypedChoiceField(ChoiceField):
|
|||||||
except (ValueError, TypeError, ValidationError):
|
except (ValueError, TypeError, ValidationError):
|
||||||
raise ValidationError(self.error_messages['invalid_choice'] % {'value': value})
|
raise ValidationError(self.error_messages['invalid_choice'] % {'value': value})
|
||||||
return value
|
return value
|
||||||
|
|
||||||
|
def validate(self, value):
|
||||||
|
pass
|
||||||
|
|
||||||
class MultipleChoiceField(ChoiceField):
|
class MultipleChoiceField(ChoiceField):
|
||||||
hidden_widget = MultipleHiddenInput
|
hidden_widget = MultipleHiddenInput
|
||||||
@ -791,6 +795,9 @@ class MultiValueField(Field):
|
|||||||
f.required = False
|
f.required = False
|
||||||
self.fields = fields
|
self.fields = fields
|
||||||
|
|
||||||
|
def validate(self, value):
|
||||||
|
pass
|
||||||
|
|
||||||
def clean(self, value):
|
def clean(self, value):
|
||||||
"""
|
"""
|
||||||
Validates every value in the given list. A value is validated against
|
Validates every value in the given list. A value is validated against
|
||||||
@ -826,7 +833,10 @@ class MultiValueField(Field):
|
|||||||
errors.extend(e.messages)
|
errors.extend(e.messages)
|
||||||
if errors:
|
if errors:
|
||||||
raise ValidationError(errors)
|
raise ValidationError(errors)
|
||||||
return self.compress(clean_data)
|
|
||||||
|
out = self.compress(clean_data)
|
||||||
|
self.validate(out)
|
||||||
|
return out
|
||||||
|
|
||||||
def compress(self, data_list):
|
def compress(self, data_list):
|
||||||
"""
|
"""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user