Fixed #11872 -- Instantiate the correct model in BaseInlineFormSet.__init__ when instance is None. Thanks tobias.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@11688 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
8812060d77
commit
8dd4a28721
|
@ -705,7 +705,7 @@ class BaseInlineFormSet(BaseModelFormSet):
|
|||
save_as_new=False, prefix=None):
|
||||
from django.db.models.fields.related import RelatedObject
|
||||
if instance is None:
|
||||
self.instance = self.model()
|
||||
self.instance = self.fk.rel.to()
|
||||
else:
|
||||
self.instance = instance
|
||||
self.save_as_new = save_as_new
|
||||
|
|
|
@ -140,3 +140,13 @@ class InlineFormsetTests(TestCase):
|
|||
self.assertEqual(manager[1]['name'], 'Terry Gilliam')
|
||||
else:
|
||||
self.fail('Errors found on formset:%s' % form_set.errors)
|
||||
|
||||
def test_formset_with_none_instance(self):
|
||||
"A formset with instance=None can be created. Regression for #11872"
|
||||
Form = modelform_factory(User)
|
||||
FormSet = inlineformset_factory(User, UserSite)
|
||||
|
||||
# Instantiate the Form and FormSet to prove
|
||||
# you can create a formset with an instance of None
|
||||
form = Form(instance=None)
|
||||
formset = FormSet(instance=None)
|
||||
|
|
Loading…
Reference in New Issue