summaryrefslogtreecommitdiff
path: root/tests/regressiontests
diff options
context:
space:
mode:
authorKaren Tracey <kmtracey@gmail.com>2010-03-21 14:23:25 +0000
committerKaren Tracey <kmtracey@gmail.com>2010-03-21 14:23:25 +0000
commitf88c2f16e84703cff225e162297a6bcedebe8910 (patch)
tree63b26300fe866fc105d895aa021e566d98ea7660 /tests/regressiontests
parent8661cb9bd38c29af35d785c98d0008323a1734b1 (diff)
Fixed #13004: Ensure the add page for a model with a ManyToManyField specified
in readonly_fields does not raise an exception. Thanks hejsan, mlavin, copelco. git-svn-id: http://code.djangoproject.com/svn/django/trunk@12827 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'tests/regressiontests')
-rw-r--r--tests/regressiontests/admin_views/models.py12
-rw-r--r--tests/regressiontests/admin_views/tests.py5
2 files changed, 17 insertions, 0 deletions
diff --git a/tests/regressiontests/admin_views/models.py b/tests/regressiontests/admin_views/models.py
index fffc40571e..e66e65fa85 100644
--- a/tests/regressiontests/admin_views/models.py
+++ b/tests/regressiontests/admin_views/models.py
@@ -565,6 +565,16 @@ class CyclicTwo(models.Model):
def __unicode__(self):
return self.name
+class Topping(models.Model):
+ name = models.CharField(max_length=20)
+
+class Pizza(models.Model):
+ name = models.CharField(max_length=20)
+ toppings = models.ManyToManyField('Topping')
+
+class PizzaAdmin(admin.ModelAdmin):
+ readonly_fields = ('toppings',)
+
admin.site.register(Article, ArticleAdmin)
admin.site.register(CustomArticle, CustomArticleAdmin)
admin.site.register(Section, save_as=True, inlines=[ArticleInline])
@@ -609,3 +619,5 @@ admin.site.register(CyclicTwo)
admin.site.register(Book, inlines=[ChapterInline])
admin.site.register(Promo)
admin.site.register(ChapterXtra1)
+admin.site.register(Pizza, PizzaAdmin)
+admin.site.register(Topping)
diff --git a/tests/regressiontests/admin_views/tests.py b/tests/regressiontests/admin_views/tests.py
index 280a89d41e..3414ea0646 100644
--- a/tests/regressiontests/admin_views/tests.py
+++ b/tests/regressiontests/admin_views/tests.py
@@ -1986,6 +1986,11 @@ class ReadonlyTest(TestCase):
p = Post.objects.order_by('-id')[0]
self.assertEqual(p.posted, datetime.date.today())
+ def test_readonly_manytomany(self):
+ "Regression test for #13004"
+ response = self.client.get('/test_admin/admin/admin_views/pizza/add/')
+ self.assertEqual(response.status_code, 200)
+
class IncompleteFormTest(TestCase):
"""
Tests validation of a ModelForm that doesn't explicitly have all data