Commit 5c98223f authored by Alasdair Nicol's avatar Alasdair Nicol Committed by Tim Graham
Browse files

Fixed #24191 -- Documented Form.changed_data

Thanks rhertzog and Björn Påhlsson for the suggestion.
parent 5c125f63
Loading
Loading
Loading
Loading
+12 −2
Original line number Diff line number Diff line
@@ -250,8 +250,8 @@ precedence::
    <tr><th>Url:</th><td><input type="url" name="url" /></td></tr>
    <tr><th>Comment:</th><td><input type="text" name="comment" /></td></tr>

Checking if form data has changed
---------------------------------
Checking which form data has changed
------------------------------------

.. method:: Form.has_changed()

@@ -277,6 +277,16 @@ from what was provided in :attr:`~Form.initial` or ``False`` otherwise. The
result is computed by calling :meth:`Field.has_changed` for each field in the
form.

.. attribute:: Form.changed_data

The ``changed_data`` attribute returns a list of the names of the fields whose
values in the form's bound data (usually ``request.POST``) differ from what was
provided in :attr:`~Form.initial`. It returns an empty list if no data differs.

    >>> f = ContactForm(request.POST, initial=data)
    >>> if f.has_changed():
    ...     print("The following fields changed: %s" % ", ".join(f.changed_data))

Accessing the fields from the form
----------------------------------