Fixed #10522: accept tuples in `generic_inlineformset_factor(exclude)`. Thanks, mk.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@10375 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
595c092a29
commit
ffe8994014
|
@ -355,6 +355,7 @@ def generic_inlineformset_factory(model, form=ModelForm,
|
||||||
raise Exception("fk_name '%s' is not a ForeignKey to ContentType" % ct_field)
|
raise Exception("fk_name '%s' is not a ForeignKey to ContentType" % ct_field)
|
||||||
fk_field = opts.get_field(fk_field) # let the exception propagate
|
fk_field = opts.get_field(fk_field) # let the exception propagate
|
||||||
if exclude is not None:
|
if exclude is not None:
|
||||||
|
exclude = list(exclude)
|
||||||
exclude.extend([ct_field.name, fk_field.name])
|
exclude.extend([ct_field.name, fk_field.name])
|
||||||
else:
|
else:
|
||||||
exclude = [ct_field.name, fk_field.name]
|
exclude = [ct_field.name, fk_field.name]
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
from django.test import TestCase
|
from django.test import TestCase
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
from django.contrib.contenttypes.generic import generic_inlineformset_factory
|
||||||
|
|
||||||
# local test models
|
# local test models
|
||||||
from models import Episode, Media
|
from models import Episode, Media
|
||||||
|
@ -74,3 +75,8 @@ class GenericAdminViewTest(TestCase):
|
||||||
url = '/generic_inline_admin/admin/generic_inline_admin/episode/%d/' % self.episode_pk
|
url = '/generic_inline_admin/admin/generic_inline_admin/episode/%d/' % self.episode_pk
|
||||||
response = self.client.post(url, post_data)
|
response = self.client.post(url, post_data)
|
||||||
self.failUnlessEqual(response.status_code, 302) # redirect somewhere
|
self.failUnlessEqual(response.status_code, 302) # redirect somewhere
|
||||||
|
|
||||||
|
def testGenericInlineFormsetFactory(self):
|
||||||
|
# Regression test for #10522.
|
||||||
|
inline_formset = generic_inlineformset_factory(Media,
|
||||||
|
exclude=('url',))
|
||||||
|
|
Loading…
Reference in New Issue