Index: django/db/models/fields/__init__.py =================================================================== --- django/db/models/fields/__init__.py (revision 4563) +++ django/db/models/fields/__init__.py (working copy) @@ -762,18 +762,15 @@ def get_manipulator_field_objs(self): return [oldforms.PositiveSmallIntegerField] -class SlugField(Field): +class SlugField(CharField): def __init__(self, *args, **kwargs): kwargs['maxlength'] = kwargs.get('maxlength', 50) kwargs.setdefault('validator_list', []).append(validators.isSlug) # Set db_index=True unless it's been set manually. if not kwargs.has_key('db_index'): kwargs['db_index'] = True - Field.__init__(self, *args, **kwargs) + CharField.__init__(self, *args, **kwargs) - def get_manipulator_field_objs(self): - return [oldforms.TextField] - class SmallIntegerField(IntegerField): def get_manipulator_field_objs(self): return [oldforms.SmallIntegerField] Index: tests/modeltests/model_forms/models.py =================================================================== --- tests/modeltests/model_forms/models.py (revision 4563) +++ tests/modeltests/model_forms/models.py (working copy) @@ -25,6 +25,7 @@ from django.db import models class Category(models.Model): + slug = models.SlugField(maxlength=20) name = models.CharField(maxlength=20) url = models.CharField('The URL', maxlength=40) @@ -38,6 +39,7 @@ return self.name class Article(models.Model): + slug = models.SlugField() headline = models.CharField(maxlength=50) pub_date = models.DateField() created = models.DateField(editable=False) @@ -71,9 +73,11 @@ >>> CategoryForm = form_for_model(Category) >>> f = CategoryForm() >>> print f +