summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorBaptiste Mispelon <bmispelon@gmail.com>2013-11-12 20:27:21 +0100
committerBaptiste Mispelon <bmispelon@gmail.com>2013-11-12 20:54:37 +0100
commitb6acc4f7498f195096e20af3e4fe0dd68d2dbac8 (patch)
tree1b823af23a375725fa20180da43733de2f17b01d /docs
parent4aed1ee339c4a36035e1fd1a02b1ec9142feac07 (diff)
[1.6.x] Removed a mention of `Form._errors` from the documentation.
Also removed a sentence that was incorrect: raising a `ValidationError` inside `Form.clean` doesn't clear the `cleaned_data` attribute. Thanks to loic84 and timograham for the review. Backport of 9aa6d4bdb6618ba4f17acc7b7c0d1462d6cbc718 and 0048ed77c7016a03aed6dbc255a6372f3df2ccd5 from master.
Diffstat (limited to 'docs')
-rw-r--r--docs/ref/forms/validation.txt16
1 files changed, 6 insertions, 10 deletions
diff --git a/docs/ref/forms/validation.txt b/docs/ref/forms/validation.txt
index 8353b3d5b4..0a61f21de2 100644
--- a/docs/ref/forms/validation.txt
+++ b/docs/ref/forms/validation.txt
@@ -80,6 +80,10 @@ overridden:
cleaned data if you override this method (by default, ``Form.clean()``
just returns ``self.cleaned_data``).
+ Since the field validation methods have been run by the time ``clean()`` is
+ called, you also have access to the form's errors attribute which
+ contains all the errors raised by cleaning of individual fields.
+
Note that any errors raised by your ``Form.clean()`` override will not
be associated with any field in particular. They go into a special
"field" (called ``__all__``), which you can access via the
@@ -97,7 +101,8 @@ These methods are run in the order given above, one field at a time. That is,
for each field in the form (in the order they are declared in the form
definition), the ``Field.clean()`` method (or its override) is run, then
``clean_<fieldname>()``. Finally, once those two methods are run for every
-field, the ``Form.clean()`` method, or its override, is executed.
+field, the ``Form.clean()`` method, or its override, is executed whether or not
+the previous methods have raised errors.
Examples of each of these methods are provided below.
@@ -106,15 +111,6 @@ field, if the ``Field.clean()`` method raises a ``ValidationError``, any
field-specific cleaning method is not called. However, the cleaning methods
for all remaining fields are still executed.
-The ``clean()`` method for the ``Form`` class or subclass is always run. If
-that method raises a ``ValidationError``, ``cleaned_data`` will be an empty
-dictionary.
-
-The previous paragraph means that if you are overriding ``Form.clean()``, you
-should iterate through ``self.cleaned_data.items()``, possibly considering the
-``_errors`` dictionary attribute on the form as well. In this way, you will
-already know which fields have passed their individual validation requirements.
-
.. _raising-validation-error:
Raising ``ValidationError``