summaryrefslogtreecommitdiff
path: root/docs/topics/forms/modelforms.txt
diff options
context:
space:
mode:
authorBrian Rosner <brosner@gmail.com>2008-09-02 17:57:02 +0000
committerBrian Rosner <brosner@gmail.com>2008-09-02 17:57:02 +0000
commit7163fe4d96f7241b9435e91598261f473c098a3a (patch)
tree5856c214cb436879ef1c1ae101b4be02a46ecb0b /docs/topics/forms/modelforms.txt
parentbc768e2b471b707bfbb234c21066a4b0cbbe9258 (diff)
Added some docs on model formsets in views.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8863 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'docs/topics/forms/modelforms.txt')
-rw-r--r--docs/topics/forms/modelforms.txt23
1 files changed, 23 insertions, 0 deletions
diff --git a/docs/topics/forms/modelforms.txt b/docs/topics/forms/modelforms.txt
index 80857aea9a..cb4a0c88d3 100644
--- a/docs/topics/forms/modelforms.txt
+++ b/docs/topics/forms/modelforms.txt
@@ -495,6 +495,29 @@ fill the rest with extra forms::
<tr><th><label for="id_form-2-name">Name:</label></th><td><input id="id_form-2-name" type="text" name="form-2-name" value="Walt Whitman" maxlength="100" /><input type="hidden" name="form-2-id" value="2" id="id_form-2-id" /></td></tr>
<tr><th><label for="id_form-3-name">Name:</label></th><td><input id="id_form-3-name" type="text" name="form-3-name" maxlength="100" /><input type="hidden" name="form-3-id" id="id_form-3-id" /></td></tr>
+Using a model formset in a view
+-------------------------------
+
+Model formsets are very similar to formsets. Lets say we want to present a
+formset to a user to edit ``Author`` model instances::
+
+ def manage_authors(request):
+ AuthorFormSet = modelformset_factory(Author)
+ if request.POST == 'POST':
+ formset = AuthorFormSet(request.POST, request.FILES)
+ if formset.is_valid():
+ formset.save()
+ # do something.
+ else:
+ formset = AuthorFormSet()
+ render_to_response("manage_authors.html", {
+ "formset": formset,
+ })
+
+As you can see the view is not drastically different than how to use a formset
+in a view. The only difference is that we call ``formset.save()`` to save the
+data into the database. This was describe above in :ref:`ref-saving-objects-in-the-formset`.
+
Using ``inlineformset_factory``
-------------------------------