From aa56c020ab4939be6e3c56bcd904036fca1f2e56 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Wed, 22 Jan 2020 16:33:34 -0500 Subject: [PATCH] Move prefix_validator() to ipam.validators --- netbox/ipam/fields.py | 9 ++------- netbox/ipam/validators.py | 6 ++++++ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/netbox/ipam/fields.py b/netbox/ipam/fields.py index 72600d1b9..c08cce829 100644 --- a/netbox/ipam/fields.py +++ b/netbox/ipam/fields.py @@ -2,15 +2,10 @@ from django.core.exceptions import ValidationError from django.db import models from netaddr import AddrFormatError, IPNetwork -from . import lookups +from . import lookups, validators from .formfields import IPFormField -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 BaseIPField(models.Field): def python_type(self): @@ -51,7 +46,7 @@ class IPNetworkField(BaseIPField): IP prefix (network and mask) """ description = "PostgreSQL CIDR field" - default_validators = [prefix_validator] + default_validators = [validators.prefix_validator] def db_type(self, connection): return 'cidr' diff --git a/netbox/ipam/validators.py b/netbox/ipam/validators.py index f95e174a3..879e20e6a 100644 --- a/netbox/ipam/validators.py +++ b/netbox/ipam/validators.py @@ -1,6 +1,12 @@ +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'