aboutsummaryrefslogtreecommitdiff
path: root/tagging/forms.py
diff options
context:
space:
mode:
Diffstat (limited to 'tagging/forms.py')
-rw-r--r--tagging/forms.py13
1 files changed, 5 insertions, 8 deletions
diff --git a/tagging/forms.py b/tagging/forms.py
index a2d9fd9..e597f2d 100644
--- a/tagging/forms.py
+++ b/tagging/forms.py
@@ -1,5 +1,5 @@
"""
-Tagging components for Django's form library.
+Form components for tagging.
"""
from django import forms
from django.utils.translation import ugettext as _
@@ -8,21 +8,20 @@ from tagging import settings
from tagging.models import Tag
from tagging.utils import parse_tag_input
+
class TagAdminForm(forms.ModelForm):
class Meta:
model = Tag
+ fields = ('name',)
def clean_name(self):
value = self.cleaned_data['name']
tag_names = parse_tag_input(value)
if len(tag_names) > 1:
raise forms.ValidationError(_('Multiple tags were given.'))
- elif len(tag_names[0]) > settings.MAX_TAG_LENGTH:
- raise forms.ValidationError(
- _('A tag may be no more than %s characters long.') %
- settings.MAX_TAG_LENGTH)
return value
+
class TagField(forms.CharField):
"""
A ``CharField`` which validates that its input is a valid list of
@@ -30,11 +29,9 @@ class TagField(forms.CharField):
"""
def clean(self, value):
value = super(TagField, self).clean(value)
- if value == u'':
- return value
for tag_name in parse_tag_input(value):
if len(tag_name) > settings.MAX_TAG_LENGTH:
raise forms.ValidationError(
_('Each tag may be no more than %s characters long.') %
- settings.MAX_TAG_LENGTH)
+ settings.MAX_TAG_LENGTH)
return value