mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
newforms: Added unit tests and docs explaining that clean_data will only ever contain fields of the form, even if extra fields are passed in data
git-svn-id: http://code.djangoproject.com/svn/django/trunk@4306 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
@@ -254,6 +254,24 @@ If your data does *not* validate, your ``Form`` instance will not have a
|
||||
...
|
||||
AttributeError: 'ContactForm' object has no attribute 'clean_data'
|
||||
|
||||
``clean_data`` will always *only* contain a key for fields defined in the
|
||||
``Form``, even if you pass extra data when you define the ``Form``. In this
|
||||
example, we pass a bunch of extra fields to the ``ContactForm`` constructor,
|
||||
but ``clean_data`` contains only the form's fields::
|
||||
|
||||
>>> data = {'subject': 'hello',
|
||||
... 'message': 'Hi there',
|
||||
... 'sender': 'foo@example.com',
|
||||
... 'cc_myself': True,
|
||||
... 'extra_field_1': 'foo',
|
||||
... 'extra_field_2': 'bar',
|
||||
... 'extra_field_3': 'baz'}
|
||||
>>> f = ContactForm(data)
|
||||
>>> f.is_valid()
|
||||
True
|
||||
>>> f.clean_data # Doesn't contain extra_field_1, etc.
|
||||
{'cc_myself': True, 'message': u'Hi there', 'sender': u'foo@example.com', 'subject': u'hello'}
|
||||
|
||||
Behavior of unbound forms
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
Reference in New Issue
Block a user