diff options
| author | Simon Willison <simon@simonwillison.net> | 2008-09-15 09:30:05 +0000 |
|---|---|---|
| committer | Simon Willison <simon@simonwillison.net> | 2008-09-15 09:30:05 +0000 |
| commit | 7617e73c8cfe99601645ce487781ecc86f8c6536 (patch) | |
| tree | 786dc18b190e57aea705d22e26628ac8b880dbbe /docs | |
| parent | 6fcdcbd456cc2eb832e956414eccb993216f44ab (diff) | |
Added documentation on creating reusable form templates; thanks for the suggestion, oggie rob
git-svn-id: http://code.djangoproject.com/svn/django/trunk@9033 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/topics/forms/index.txt | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/docs/topics/forms/index.txt b/docs/topics/forms/index.txt index cf6b933ee4..8ac950e589 100644 --- a/docs/topics/forms/index.txt +++ b/docs/topics/forms/index.txt @@ -290,6 +290,37 @@ templates: corresponding to this field. You can customize the presentation of the errors with a ``{% for error in field.errors %}`` loop. +Reusable form templates +----------------------- + +If your site uses the same rendering logic for forms in multiple places you +can create a template that contains just the form loop and use the +:ttag:`include` tag to reuse it in your other templates:: + + <form action="/contact/" method="POST"> + {% include "form_snippet.html" %} + <p><input type="submit" value="Send message"></p> + </form> + + # In form_snippet.html: + + {% for field in form %} + <div class="fieldWrapper"> + {{ field.errors }} + {{ field.label_tag }}: {{ field }} + </div> + {% endfor %} + +If the form object passed to a template has a different name within the +context you can alias it using the :ttag:`with` tag:: + + <form action="/comments/add/" method="POST"> + {% with comment_form as form %} + {% include "form_snippet.html" %} + {% endwith %} + <p><input type="submit" value="Submit comment"></p> + </form> + Further topics ============== |
