mirror of
https://github.com/django/django.git
synced 2025-11-01 20:31:40 +00:00
Added support for specifying initial values to model formsets and inline formsets.
This make them consistent with the similar capability of regular formsets. Thanks to simon29 form the report and to Claude Paroz for the patch. Fixes #14574. git-svn-id: http://code.djangoproject.com/svn/django/trunk@17373 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
4e29b70b9d
commit
e308cfc0e1
6 changed files with 48 additions and 3 deletions
|
|
@ -204,6 +204,17 @@ class InlineFormsetTests(TestCase):
|
|||
["<Host: matrix.de.eu.dal.net>", "<Host: tranquility.hub.dal.net>"]
|
||||
)
|
||||
|
||||
def test_initial_data(self):
|
||||
user = User.objects.create(username="bibi", serial=1)
|
||||
UserSite.objects.create(user=user, data=7)
|
||||
FormSet = inlineformset_factory(User, UserSite, extra=2)
|
||||
|
||||
formset = FormSet(instance=user, initial=[{'data': 41}, {'data': 42}])
|
||||
self.assertEqual(formset.forms[0].initial['data'], 7)
|
||||
self.assertEqual(formset.extra_forms[0].initial['data'], 41)
|
||||
self.assertTrue(u'value="42"' in formset.extra_forms[1].as_p())
|
||||
|
||||
|
||||
class FormsetTests(TestCase):
|
||||
def test_error_class(self):
|
||||
'''
|
||||
|
|
@ -230,6 +241,14 @@ class FormsetTests(TestCase):
|
|||
self.assertTrue(isinstance(form.errors, ErrorDict))
|
||||
self.assertTrue(isinstance(form.non_field_errors(), ErrorList))
|
||||
|
||||
def test_initial_data(self):
|
||||
User.objects.create(username="bibi", serial=1)
|
||||
Formset = modelformset_factory(User, extra=2)
|
||||
formset = Formset(initial=[{'username': u'apollo11'}, {'username': u'apollo12'}])
|
||||
self.assertEqual(formset.forms[0].initial['username'], "bibi")
|
||||
self.assertEqual(formset.extra_forms[0].initial['username'], "apollo11")
|
||||
self.assertTrue(u'value="apollo12"' in formset.extra_forms[1].as_p())
|
||||
|
||||
class CustomWidget(forms.CharField):
|
||||
pass
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue