Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Edited docs/topics/forms/index.txt changes from [9569] and fixed a ty…

…po in the visible_fields() docstring

git-svn-id: http://code.djangoproject.com/svn/django/trunk@9592 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 352efd189328cca8ff5ab2af2b65522ec44fa889 1 parent 33c0f0d
Adrian Holovaty adrianholovaty authored
Showing with 13 additions and 12 deletions.
  1. +4 −4 django/forms/forms.py
  2. +9 −8 docs/topics/forms/index.txt
8 django/forms/forms.py
View
@@ -305,15 +305,15 @@ def is_multipart(self):
def hidden_fields(self):
"""
- Returns a list of all the BoundField objects that correspond to hidden
- fields in the HTML output. Useful for manual form layout in templates.
+ Returns a list of all the BoundField objects that are hidden fields.
+ Useful for manual form layout in templates.
"""
return [field for field in self if field.is_hidden]
def visible_fields(self):
"""
- Returns a lits of BoundField objects that do not correspond to hidden
- fields. The opposite of the hidden_fields() method.
+ Returns a list of BoundField objects that aren't hidden fields.
+ The opposite of the hidden_fields() method.
"""
return [field for field in self if not field.is_hidden]
17 docs/topics/forms/index.txt
View
@@ -304,16 +304,17 @@ templates:
Looping over hidden and visible fields
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-If you are manually laying out a form in a template, you will often want to
-work with any hidden fields in a single loop and then treat the visible fields
-differently. For example, since hidden fields don't display anything, putting
-their error messages "next to" the field isn't going to be very clear to the
-reader. So you need to handle errors for those fields a bit differently.
+If you're manually laying out a form in a template, as opposed to relying on
+Django's default form layout, you might want to treat ``<input type="hidden">``
+fields differently than non-hidden fields. For example, because hidden fields
+don't display anything, putting error messages "next to" the field could cause
+confusion for your users -- so errors for those fields should be handled
+differently.
Django provides two methods on a form that allow you to loop over the hidden
and visible fields independently: ``hidden_fields()`` and
-``visible_fields()``. In a template, you might use these like this (this is a
-modification of an earlier example)::
+``visible_fields()``. Here's a modification of an earlier example that uses
+these two methods::
<form action="/contact/" method="POST">
{% for field in form.visible_fields %}
@@ -336,7 +337,7 @@ modification of an earlier example)::
This example does not handle any errors in the hidden fields. Usually, an
error in a hidden field is a sign of form tampering, since normal form
interaction won't alter them. However, you could easily insert some error
-displays for those form errors as well.
+displays for those form errors, as well.
.. versionadded:: 1.1
The ``hidden_fields`` and ``visible_fields`` methods are new in Django
Please sign in to comment.
Something went wrong with that request. Please try again.