mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-08-06 05:20:12 +03:00
Pickup custom message for min_length validators
This commit is contained in:
parent
c3fd86d323
commit
4c7b3040d8
|
@ -209,12 +209,13 @@ def get_field_kwargs(field_name, model_field):
|
||||||
|
|
||||||
# Ensure that min_length is passed explicitly as a keyword arg,
|
# Ensure that min_length is passed explicitly as a keyword arg,
|
||||||
# rather than as a validator.
|
# rather than as a validator.
|
||||||
min_length = next((
|
min_length, message = next((
|
||||||
validator.limit_value for validator in validator_kwarg
|
(validator.limit_value, validator.message) for validator in validator_kwarg
|
||||||
if isinstance(validator, validators.MinLengthValidator)
|
if isinstance(validator, validators.MinLengthValidator)
|
||||||
), None)
|
), (None, None))
|
||||||
if min_length is not None and isinstance(model_field, models.CharField):
|
if min_length is not None and isinstance(model_field, models.CharField):
|
||||||
kwargs['min_length'] = min_length
|
kwargs['min_length'] = min_length
|
||||||
|
kwargs.setdefault('error_messages', {}).update(min_length=message)
|
||||||
validator_kwarg = [
|
validator_kwarg = [
|
||||||
validator for validator in validator_kwarg
|
validator for validator in validator_kwarg
|
||||||
if not isinstance(validator, validators.MinLengthValidator)
|
if not isinstance(validator, validators.MinLengthValidator)
|
||||||
|
|
|
@ -631,7 +631,10 @@ class ValidatorMessageTests(TestCase):
|
||||||
|
|
||||||
def test_min_length_validator_message_is_copied_from_model(self):
|
def test_min_length_validator_message_is_copied_from_model(self):
|
||||||
class Review(models.Model):
|
class Review(models.Model):
|
||||||
text = models.CharField(max_length=100, validators=[MinLengthValidator(limit_value=5, message='This is too short.')])
|
text = models.CharField(
|
||||||
|
max_length=100,
|
||||||
|
validators=[MinLengthValidator(limit_value=5, message='This is too short.')]
|
||||||
|
)
|
||||||
|
|
||||||
class ReviewSerializer(serializers.ModelSerializer):
|
class ReviewSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|
Loading…
Reference in New Issue
Block a user