Browse Source

Removed reference to deprecated SubFieldBase; replaced with from_db_value()

Jeremy Stretch 9 years ago
parent
commit
810981b1d6
1 changed files with 7 additions and 5 deletions
  1. 7 5
      netbox/ipam/fields.py

+ 7 - 5
netbox/ipam/fields.py

@@ -2,18 +2,20 @@ from netaddr import IPNetwork
 
 from django.core.exceptions import ValidationError
 from django.db import models
-from django.utils.six import with_metaclass
 
 from .formfields import IPFormField
 from .lookups import EndsWith, IEndsWith, StartsWith, IStartsWith, Regex, IRegex, NetContained, NetContainedOrEqual, \
     NetContains, NetContainsOrEquals, NetHost
 
 
-class _BaseIPField(models.Field):
+class BaseIPField(models.Field):
 
     def python_type(self):
         return IPNetwork
 
+    def from_db_value(self, value, expression, connection, context):
+        return self.to_python(value)
+
     def to_python(self, value):
         if not value:
             return value
@@ -33,10 +35,10 @@ class _BaseIPField(models.Field):
     def formfield(self, **kwargs):
         defaults = {'form_class': self.form_class()}
         defaults.update(kwargs)
-        return super(_BaseIPField, self).formfield(**defaults)
+        return super(BaseIPField, self).formfield(**defaults)
 
 
-class IPNetworkField(with_metaclass(models.SubfieldBase, _BaseIPField)):
+class IPNetworkField(BaseIPField):
     """
     IP prefix (network and mask)
     """
@@ -59,7 +61,7 @@ IPNetworkField.register_lookup(NetContainsOrEquals)
 IPNetworkField.register_lookup(NetHost)
 
 
-class IPAddressField(with_metaclass(models.SubfieldBase, _BaseIPField)):
+class IPAddressField(BaseIPField):
     """
     IP address (host address and mask)
     """