mirror of
https://github.com/django/django.git
synced 2025-10-23 21:59:11 +00:00
Fixed #13524 -- Added backwards compatibility and feature notes regarding admin inlines and formsets. Thanks to Ramiro Morales and Gabriel Hurley.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@13241 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
@@ -599,6 +599,24 @@ True
|
||||
|
||||
# Base case for max_num.
|
||||
|
||||
# When not passed, max_num will take its default value of None, i.e. unlimited
|
||||
# number of forms, only controlled by the value of the extra parameter.
|
||||
|
||||
>>> LimitedFavoriteDrinkFormSet = formset_factory(FavoriteDrinkForm, extra=3)
|
||||
>>> formset = LimitedFavoriteDrinkFormSet()
|
||||
>>> for form in formset.forms:
|
||||
... print form
|
||||
<tr><th><label for="id_form-0-name">Name:</label></th><td><input type="text" name="form-0-name" id="id_form-0-name" /></td></tr>
|
||||
<tr><th><label for="id_form-1-name">Name:</label></th><td><input type="text" name="form-1-name" id="id_form-1-name" /></td></tr>
|
||||
<tr><th><label for="id_form-2-name">Name:</label></th><td><input type="text" name="form-2-name" id="id_form-2-name" /></td></tr>
|
||||
|
||||
# If max_num is 0 then no form is rendered at all.
|
||||
|
||||
>>> LimitedFavoriteDrinkFormSet = formset_factory(FavoriteDrinkForm, extra=3, max_num=0)
|
||||
>>> formset = LimitedFavoriteDrinkFormSet()
|
||||
>>> for form in formset.forms:
|
||||
... print form
|
||||
|
||||
>>> LimitedFavoriteDrinkFormSet = formset_factory(FavoriteDrinkForm, extra=5, max_num=2)
|
||||
>>> formset = LimitedFavoriteDrinkFormSet()
|
||||
>>> for form in formset.forms:
|
||||
@@ -606,7 +624,7 @@ True
|
||||
<tr><th><label for="id_form-0-name">Name:</label></th><td><input type="text" name="form-0-name" id="id_form-0-name" /></td></tr>
|
||||
<tr><th><label for="id_form-1-name">Name:</label></th><td><input type="text" name="form-1-name" id="id_form-1-name" /></td></tr>
|
||||
|
||||
# Ensure the that max_num has no affect when extra is less than max_forms.
|
||||
# Ensure that max_num has no effect when extra is less than max_num.
|
||||
|
||||
>>> LimitedFavoriteDrinkFormSet = formset_factory(FavoriteDrinkForm, extra=1, max_num=2)
|
||||
>>> formset = LimitedFavoriteDrinkFormSet()
|
||||
@@ -616,6 +634,32 @@ True
|
||||
|
||||
# max_num with initial data
|
||||
|
||||
# When not passed, max_num will take its default value of None, i.e. unlimited
|
||||
# number of forms, only controlled by the values of the initial and extra
|
||||
# parameters.
|
||||
|
||||
>>> initial = [
|
||||
... {'name': 'Fernet and Coke'},
|
||||
... ]
|
||||
>>> LimitedFavoriteDrinkFormSet = formset_factory(FavoriteDrinkForm, extra=1)
|
||||
>>> formset = LimitedFavoriteDrinkFormSet(initial=initial)
|
||||
>>> for form in formset.forms:
|
||||
... print form
|
||||
<tr><th><label for="id_form-0-name">Name:</label></th><td><input type="text" name="form-0-name" value="Fernet and Coke" id="id_form-0-name" /></td></tr>
|
||||
<tr><th><label for="id_form-1-name">Name:</label></th><td><input type="text" name="form-1-name" id="id_form-1-name" /></td></tr>
|
||||
|
||||
# If max_num is 0 then no form is rendered at all, even if extra and initial
|
||||
# are specified.
|
||||
|
||||
>>> initial = [
|
||||
... {'name': 'Fernet and Coke'},
|
||||
... {'name': 'Bloody Mary'},
|
||||
... ]
|
||||
>>> LimitedFavoriteDrinkFormSet = formset_factory(FavoriteDrinkForm, extra=1, max_num=0)
|
||||
>>> formset = LimitedFavoriteDrinkFormSet(initial=initial)
|
||||
>>> for form in formset.forms:
|
||||
... print form
|
||||
|
||||
# More initial forms than max_num will result in only the first max_num of
|
||||
# them to be displayed with no extra forms.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user