summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrian Holovaty <adrian@holovaty.com>2007-01-24 17:58:20 +0000
committerAdrian Holovaty <adrian@holovaty.com>2007-01-24 17:58:20 +0000
commit668671561dab5efa68f575997bf9d655174ee686 (patch)
tree0b3fd7011a615508067ba1b800830d18c6042880
parentcb57d82cdee6bd6bcc4fadb835bbb506daf0d479 (diff)
newforms-admin: Fixed a bug in formfield_for_dbfield()
git-svn-id: http://code.djangoproject.com/svn/django/branches/newforms-admin@4417 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--django/contrib/admin/options.py12
1 files changed, 7 insertions, 5 deletions
diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py
index 4925eeff76..aceb7625fb 100644
--- a/django/contrib/admin/options.py
+++ b/django/contrib/admin/options.py
@@ -205,8 +205,8 @@ class ModelAdmin(object):
"""
# For filter_interface ManyToManyFields, use a special Widget.
if isinstance(db_field, models.ManyToManyField) and db_field.rel.filter_interface:
- widget = widgets.FilteredSelectMultiple(db_field.verbose_name, db_field.rel.filter_interface-1)
- return db_field.formfield(widget=widget, **kwargs)
+ kwargs['widget'] = widgets.FilteredSelectMultiple(db_field.verbose_name, db_field.rel.filter_interface-1)
+ return db_field.formfield(**kwargs)
# For DateTimeFields, use a special field and widget.
if isinstance(db_field, models.DateTimeField):
@@ -215,17 +215,19 @@ class ModelAdmin(object):
# For DateFields, add a custom CSS class.
if isinstance(db_field, models.DateField):
- return db_field.formfield(widget=forms.TextInput(attrs={'class': 'vDateField', 'size': '10'}))
+ kwargs['widget'] = forms.TextInput(attrs={'class': 'vDateField', 'size': '10'})
+ return db_field.formfield(**kwargs)
# For TimeFields, add a custom CSS class.
if isinstance(db_field, models.TimeField):
- return db_field.formfield(widget=forms.TextInput(attrs={'class': 'vTimeField', 'size': '8'}))
+ kwargs['widget'] = forms.TextInput(attrs={'class': 'vTimeField', 'size': '8'})
+ return db_field.formfield(**kwargs)
# For ForeignKey or ManyToManyFields, use a special widget.
if db_field.rel and isinstance(db_field.rel, (models.ManyToOneRel, models.ManyToManyRel)):
# Wrap the widget's render() method with a method that adds
# extra HTML to the end of the rendered output.
- formfield = db_field.formfield()
+ formfield = db_field.formfield(**kwargs)
formfield.widget.render = widgets.RelatedFieldWidgetWrapper(formfield.widget.render, db_field.rel)
return formfield