Browse files

[1.6.x] Fixed #21539 -- Added example of modelformset_factory's form …


Backport of 1fa681e from master
  • Loading branch information...
1 parent ad8a781 commit 15ab4936d7d7c351ab8eea5f8c2765632429c9ed @alasdairnicol alasdairnicol committed with timgraham Dec 1, 2013
Showing with 24 additions and 0 deletions.
  1. +24 −0 docs/topics/forms/modelforms.txt
24 docs/topics/forms/modelforms.txt
@@ -747,6 +747,30 @@ instances of the model, you can specify an empty QuerySet::
>>> AuthorFormSet(queryset=Author.objects.none())
+Changing the ``form``
+By default, when you use ``modelformset_factory``, a model form will
+be created using :func:`~django.forms.models.modelform_factory`.
+Often, it can be useful to specify a custom model form. For example,
+you can create a custom model form that has custom validation::
+ class AuthorForm(forms.ModelForm):
+ class Meta:
+ model = Author
+ fields = ('name', 'title')
+ def clean_name(self):
+ # custom validation for the name field
+ ...
+Then, pass your model form to the factory function::
+ AuthorFormSet = modelformset_factory(Author, form=AuthorForm)
+It is not always necessary to define a custom model form. The
+``modelformset_factory`` function has several arguments which are
+passed through to ``modelform_factory``, which are described below.
Controlling which fields are used with ``fields`` and ``exclude``

0 comments on commit 15ab493

Please sign in to comment.