diff options
author | Rob Austein <sra@hactrn.net> | 2016-01-23 04:20:41 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2016-01-23 04:20:41 +0000 |
commit | 729456cb571f35130f92aaefd9339a3b06d3dbbd (patch) | |
tree | 1f090ed87848fb432ca0599c27f4c56c27b93ecb | |
parent | b13edb8b25ffa0d4252a42fadd13f0367f6d47bf (diff) |
Remove last vestiges of "__metaclass__ = models.SubfieldBase"
(deprecated in Django 1.9, scheduled to be removed in Django 1.10).
svn path=/branches/tk705/; revision=6231
-rw-r--r-- | rpki/fields.py | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/rpki/fields.py b/rpki/fields.py index 06f71259..6a2dc4d0 100644 --- a/rpki/fields.py +++ b/rpki/fields.py @@ -42,8 +42,6 @@ class EnumField(models.PositiveSmallIntegerField): description = "An enumeration type" - __metaclass__ = models.SubfieldBase - def __init__(self, *args, **kwargs): if isinstance(kwargs.get("choices"), (tuple, list)) and isinstance(kwargs["choices"][0], (str, unicode)): kwargs["choices"] = tuple(enumerate(kwargs["choices"], 1)) @@ -52,7 +50,11 @@ class EnumField(models.PositiveSmallIntegerField): self.enum_i2s = dict(self.flatchoices) self.enum_s2i = dict((v, k) for k, v in self.flatchoices) + def from_db_value(self, value, expression, connection, context): + return self.enum_i2s.get(value, value) + def to_python(self, value): + value = super(EnumField, self).to_python(value) return self.enum_i2s.get(value, value) def get_prep_value(self, value): @@ -63,10 +65,12 @@ class SundialField(models.DateTimeField): """ A field type for our customized datetime objects. """ - __metaclass__ = models.SubfieldBase description = "A datetime type using our customized datetime objects" + def from_db_value(self, value, expression, connection, context): + return self.to_python(value) + def to_python(self, value): if isinstance(value, rpki.sundial.pydatetime.datetime): return rpki.sundial.datetime.from_datetime( @@ -88,7 +92,6 @@ class BlobField(models.Field): Do not use, this is only here for backwards compatabilty during migrations. """ - __metaclass__ = models.SubfieldBase description = "Raw BLOB type without ASN.1 encoding/decoding" def __init__(self, *args, **kwargs): @@ -98,6 +101,13 @@ class BlobField(models.Field): kwargs["default"] = None models.Field.__init__(self, *args, **kwargs) + def deconstruct(self): + name, path, args, kwargs = super(BlobField, self).deconstruct() + del kwargs["serialize"] + del kwargs["blank"] + del kwargs["default"] + return name, path, args, kwargs + def db_type(self, connection): if self.blob_type is not None: return self.blob_type |