summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorAudrey Roy <audreyr@gmail.com>2012-06-07 21:07:43 +0200
committerAymeric Augustin <aymeric.augustin@m4x.org>2012-06-08 12:13:52 +0200
commit7ab6e32843e74176c71fc76219014e3c1f8f41b6 (patch)
tree86adb58c99540bb18c0bb827c23868cb59264999 /docs
parent3c05b500a55406d0bd87cf24baa67469dbf90a03 (diff)
Revised the text in the 'Processing the data from a form' section.
Diffstat (limited to 'docs')
-rw-r--r--docs/topics/forms/index.txt34
1 files changed, 21 insertions, 13 deletions
diff --git a/docs/topics/forms/index.txt b/docs/topics/forms/index.txt
index 390989c134..ff0665b13a 100644
--- a/docs/topics/forms/index.txt
+++ b/docs/topics/forms/index.txt
@@ -131,25 +131,31 @@ The distinction between :ref:`ref-forms-api-bound-unbound` is important:
Handling file uploads with a form
---------------------------------
-To see how to handle file uploads with your form see
-:ref:`binding-uploaded-files` for more information.
+To see how to handle file uploads with your form, see
+:ref:`binding-uploaded-files`.
Processing the data from a form
-------------------------------
-Once ``is_valid()`` returns ``True``, you can process the form submission safe
-in the knowledge that it conforms to the validation rules defined by your form.
-While you could access ``request.POST`` directly at this point, it is better to
-access ``form.cleaned_data``. This data has not only been validated but will
-also be converted in to the relevant Python types for you. In the above example,
-``cc_myself`` will be a boolean value. Likewise, fields such as ``IntegerField``
-and ``FloatField`` convert values to a Python int and float respectively. Note
-that read-only fields are not available in ``form.cleaned_data`` (and setting
-a value in a custom ``clean()`` method won't have any effect) because these
+Once ``is_valid()`` returns ``True``, the successfully validated form data
+will be in the ``form.cleaned_data`` dictionary. This data will have been
+converted nicely into Python types for you.
+
+.. note::
+
+ You can still access the unvalidated data directly from ``request.POST`` at
+ this point, but the validated data is better.
+
+In the above example, ``cc_myself`` will be a boolean value. Likewise, fields
+such as ``IntegerField`` and ``FloatField`` convert values to a Python int and
+float respectively.
+
+Read-only fields are not available in ``form.cleaned_data`` (and setting
+a value in a custom ``clean()`` method won't have any effect). These
fields are displayed as text rather than as input elements, and thus are not
posted back to the server.
-Extending the above example, here's how the form data could be processed:
+Extending the earlier example, here's how the form data could be processed:
.. code-block:: python
@@ -167,7 +173,9 @@ Extending the above example, here's how the form data could be processed:
send_mail(subject, message, sender, recipients)
return HttpResponseRedirect('/thanks/') # Redirect after POST
-For more on sending email from Django, see :doc:`/topics/email`.
+.. tip::
+
+ For more on sending email from Django, see :doc:`/topics/email`.
Displaying a form using a template
----------------------------------