Skip to content
Browse files

Added first bit of 'More granular output' to docs/newforms.txt

git-svn-id: bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
1 parent d681b08 commit b9eb64949200aba47cad7dfb58be12e2554aff9c @adrianholovaty adrianholovaty committed
Showing with 36 additions and 4 deletions.
  1. +36 −4 docs/newforms.txt
40 docs/newforms.txt
@@ -282,12 +282,41 @@ example, in the ``ContactForm`` example, the fields are defined in the order
``subject``, ``message``, ``sender``, ``cc_myself``. To reorder the HTML
output, just change the order in which those fields are listed in the class.
-Using forms to validate data
+More granular output
-In addition to HTML form display, a ``Form`` class is responsible for
-validating data.
+The ``as_p()``, ``as_ul()`` and ``as_table()`` methods are simply shortcuts for
+lazy developers -- they're not the only way a form object can be displayed.
+To display the HTML for a single field in your form, use dictionary lookup
+syntax using the field's name as the key, and print the resulting object::
+ >>> f = ContactForm()
+ >>> print f['subject']
+ <input id="id_subject" type="text" name="subject" maxlength="100" />
+ >>> print f['message']
+ <input type="text" name="message" id="id_message" />
+ >>> print f['sender']
+ <input type="text" name="sender" id="id_sender" />
+ >>> print f['cc_myself']
+ <input type="checkbox" name="cc_myself" id="id_cc_myself" />
+Call ``str()`` or ``unicode()`` on the field to get its rendered HTML as a
+string or Unicode object, respectively::
+ >>> str(f['subject'])
+ '<input id="id_subject" type="text" name="subject" maxlength="100" />'
+ >>> unicode(f['subject'])
+ u'<input id="id_subject" type="text" name="subject" maxlength="100" />'
+The field-specific output honors the form object's ``auto_id`` setting::
+ >>> f = ContactForm(auto_id=False)
+ >>> print f['message']
+ <input type="text" name="message" />
+ >>> f = ContactForm(auto_id='id_%s')
+ >>> print f['message']
+ <input type="text" name="message" id="id_message" />
More coming soon
@@ -297,6 +326,9 @@
-- the unit tests for ``django.newforms``. This can give you a good idea of
what's possible.
+If you're really itching to learn and use this library, please be patient.
+We're working hard on finishing both the code and documentation.
Using forms with templates

0 comments on commit b9eb649

Please sign in to comment.
Something went wrong with that request. Please try again.