diff options
Diffstat (limited to 'tests/regressiontests/generic_inline_admin/models.py')
| -rw-r--r-- | tests/regressiontests/generic_inline_admin/models.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/regressiontests/generic_inline_admin/models.py b/tests/regressiontests/generic_inline_admin/models.py index 9f1bbadd3e..2925b7a801 100644 --- a/tests/regressiontests/generic_inline_admin/models.py +++ b/tests/regressiontests/generic_inline_admin/models.py @@ -72,3 +72,24 @@ class MediaExcludeInline(generic.GenericTabularInline): admin.site.register(EpisodeExclude, inlines=[MediaExcludeInline]) +# +# Generic inline with unique_together +# + +class PhoneNumber(models.Model): + content_type = models.ForeignKey(ContentType) + object_id = models.PositiveIntegerField() + content_object = generic.GenericForeignKey('content_type', 'object_id') + phone_number = models.CharField(max_length=30) + + class Meta: + unique_together = (('content_type', 'object_id', 'phone_number',),) + +class Contact(models.Model): + name = models.CharField(max_length=50) + phone_numbers = generic.GenericRelation(PhoneNumber) + +class PhoneNumberInline(generic.GenericTabularInline): + model = PhoneNumber + +admin.site.register(Contact, inlines=[PhoneNumberInline]) |
