diff options
Diffstat (limited to 'tests/regressiontests/admin_validation/models.py')
| -rw-r--r-- | tests/regressiontests/admin_validation/models.py | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/tests/regressiontests/admin_validation/models.py b/tests/regressiontests/admin_validation/models.py index bd83f80a1b..1ff89e2502 100644 --- a/tests/regressiontests/admin_validation/models.py +++ b/tests/regressiontests/admin_validation/models.py @@ -4,12 +4,16 @@ Tests of ModelAdmin validation logic. from django.db import models +class Album(models.Model): + title = models.CharField(max_length=150) + class Song(models.Model): title = models.CharField(max_length=150) - + album = models.ForeignKey(Album) + class Meta: ordering = ('title',) - + def __unicode__(self): return self.title @@ -19,9 +23,7 @@ __test__ = {'API_TESTS':""" >>> from django.contrib import admin >>> from django.contrib.admin.validation import validate -# # Regression test for #8027: custom ModelForms with fields/fieldsets -# >>> class SongForm(forms.ModelForm): ... pass @@ -40,4 +42,20 @@ Traceback (most recent call last): ... ImproperlyConfigured: 'InvalidFields.fields' refers to field 'spam' that is missing from the form. +# Regression test for #9932 - exclude in InlineModelAdmin +# should not contain the ForeignKey field used in ModelAdmin.model + +>>> class SongInline(admin.StackedInline): +... model = Song +... exclude = ['album'] + +>>> class AlbumAdmin(admin.ModelAdmin): +... model = Album +... inlines = [SongInline] + +>>> validate(AlbumAdmin, Album) +Traceback (most recent call last): + ... +ImproperlyConfigured: SongInline cannot exclude the field 'album' - this is the foreign key to the parent model Album. + """} |
