| 123456789101112131415161718192021222324252627282930 |
- from django.core.exceptions import ValidationError
- from django.core.validators import BaseValidator, RegexValidator
- def prefix_validator(prefix):
- if prefix.ip != prefix.cidr.ip:
- raise ValidationError("{} is not a valid prefix. Did you mean {}?".format(prefix, prefix.cidr))
- class MaxPrefixLengthValidator(BaseValidator):
- message = 'The prefix length must be less than or equal to %(limit_value)s.'
- code = 'max_prefix_length'
- def compare(self, a, b):
- return a.prefixlen > b
- class MinPrefixLengthValidator(BaseValidator):
- message = 'The prefix length must be greater than or equal to %(limit_value)s.'
- code = 'min_prefix_length'
- def compare(self, a, b):
- return a.prefixlen < b
- DNSValidator = RegexValidator(
- regex='^[0-9A-Za-z._-]+$',
- message='Only alphanumeric characters, hyphens, periods, and underscores are allowed in DNS names',
- code='invalid'
- )
|