summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Gaynor <alex.gaynor@gmail.com>2010-11-22 21:55:29 +0000
committerAlex Gaynor <alex.gaynor@gmail.com>2010-11-22 21:55:29 +0000
commit3498849532151f618ff36eea4bd315de6f500687 (patch)
tree8597da50fa2a430e90e5a2eabfdedca20a23d24d
parent07ba3220ba30b83952f69ae00c593c5770b880ec (diff)
Fixed #14424 -- corrected a NameError when instantiating a RelatedFieldWidgetWrapper.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@14683 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--django/contrib/admin/widgets.py2
-rw-r--r--tests/regressiontests/admin_widgets/models.py5
-rw-r--r--tests/regressiontests/admin_widgets/tests.py17
3 files changed, 17 insertions, 7 deletions
diff --git a/django/contrib/admin/widgets.py b/django/contrib/admin/widgets.py
index 0f567bdbdd..f06c5e421c 100644
--- a/django/contrib/admin/widgets.py
+++ b/django/contrib/admin/widgets.py
@@ -203,7 +203,7 @@ class RelatedFieldWidgetWrapper(forms.Widget):
# Backwards compatible check for whether a user can add related
# objects.
if can_add_related is None:
- can_add_related = rel_to in self.admin_site._registry
+ can_add_related = rel.to in admin_site._registry
self.can_add_related = can_add_related
# so we can check if the related object is registered with this AdminSite
self.admin_site = admin_site
diff --git a/tests/regressiontests/admin_widgets/models.py b/tests/regressiontests/admin_widgets/models.py
index 6d51746041..c187584996 100644
--- a/tests/regressiontests/admin_widgets/models.py
+++ b/tests/regressiontests/admin_widgets/models.py
@@ -1,8 +1,9 @@
from django.db import models
from django.contrib.auth.models import User
-class MyFileField(models.FileField):
- pass
+
+class MyFileField(models.FileField):
+ pass
class Member(models.Model):
name = models.CharField(max_length=100)
diff --git a/tests/regressiontests/admin_widgets/tests.py b/tests/regressiontests/admin_widgets/tests.py
index 4f9abb6b59..489013fea3 100644
--- a/tests/regressiontests/admin_widgets/tests.py
+++ b/tests/regressiontests/admin_widgets/tests.py
@@ -6,9 +6,9 @@ from django import forms
from django.conf import settings
from django.contrib import admin
from django.contrib.admin import widgets
-from django.contrib.admin.widgets import FilteredSelectMultiple, AdminSplitDateTime
-from django.contrib.admin.widgets import (AdminFileWidget, ForeignKeyRawIdWidget,
- ManyToManyRawIdWidget)
+from django.contrib.admin.widgets import (FilteredSelectMultiple,
+ AdminSplitDateTime, AdminFileWidget, ForeignKeyRawIdWidget, AdminRadioSelect,
+ RelatedFieldWidgetWrapper, ManyToManyRawIdWidget)
from django.core.files.storage import default_storage
from django.core.files.uploadedfile import SimpleUploadedFile
from django.db.models import DateField
@@ -31,7 +31,8 @@ class AdminFormfieldForDBFieldTests(TestCase):
and verify that the returned formfield is appropriate.
"""
# Override any settings on the model admin
- class MyModelAdmin(admin.ModelAdmin): pass
+ class MyModelAdmin(admin.ModelAdmin):
+ pass
for k in admin_overrides:
setattr(MyModelAdmin, k, admin_overrides[k])
@@ -314,3 +315,11 @@ class ManyToManyRawIdWidgetTest(DjangoTestCase):
self.assertEqual(w._has_changed([1, 2], [u'1', u'2']), False)
self.assertEqual(w._has_changed([1, 2], [u'1']), True)
self.assertEqual(w._has_changed([1, 2], [u'1', u'3']), True)
+
+class RelatedFieldWidgetWrapperTests(DjangoTestCase):
+ def test_no_can_add_related(self):
+ rel = models.Inventory._meta.get_field('parent').rel
+ w = AdminRadioSelect()
+ # Used to fail with a name error.
+ w = RelatedFieldWidgetWrapper(w, rel, admin.site)
+ self.assertFalse(w.can_add_related)