Skip to content

Commit

Permalink
preliminary south support
Browse files Browse the repository at this point in the history
  • Loading branch information
tehfink authored and justinabrahms committed Dec 4, 2009
1 parent 5d9e268 commit ed41647
Showing 1 changed file with 35 additions and 1 deletion.
36 changes: 35 additions & 1 deletion django_extensions/db/fields/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,15 @@ def pre_save(self, model_instance, add):
def get_internal_type(self):
return "SlugField"

def south_field_triple(self):
"Returns a suitable description of this field for South."
# We'll just introspect the _actual_ field.
from south.modelsinspector import introspector
field_class = "django.db.models.fields.SlugField"
args, kwargs = introspector(self)
# That's our definition!
return (field_class, args, kwargs)

class CreationDateTimeField(DateTimeField):
""" CreationDateTimeField
Expand All @@ -142,6 +151,14 @@ def __init__(self, *args, **kwargs):
def get_internal_type(self):
return "DateTimeField"

def south_field_triple(self):
"Returns a suitable description of this field for South."
# We'll just introspect ourselves, since we inherit.
from south.modelsinspector import introspector
field_class = "django.db.models.fields.DateTimeField"
args, kwargs = introspector(self)
return (field_class, args, kwargs)

class ModificationDateTimeField(CreationDateTimeField):
""" ModificationDateTimeField
Expand All @@ -158,6 +175,14 @@ def pre_save(self, model, add):
def get_internal_type(self):
return "DateTimeField"

def south_field_triple(self):
"Returns a suitable description of this field for South."
# We'll just introspect ourselves, since we inherit.
from south.modelsinspector import introspector
field_class = "django.db.models.fields.DateTimeField"
args, kwargs = introspector(self)
return (field_class, args, kwargs)

class UUIDVersionError(Exception):
pass

Expand Down Expand Up @@ -210,4 +235,13 @@ def pre_save(self, model_instance, add):
if self.auto and not value:
value = unicode(self.create_uuid())
setattr(model_instance, self.attname, value)
return value
return value

def south_field_triple(self):
"Returns a suitable description of this field for South."
# We'll just introspect the _actual_ field.
from south.modelsinspector import introspector
field_class = "django.db.models.fields.CharField"
args, kwargs = introspector(self)
# That's our definition!
return (field_class, args, kwargs)

0 comments on commit ed41647

Please sign in to comment.