1
0
mirror of https://github.com/django/django.git synced 2025-10-23 21:59:11 +00:00

newforms-admin: Changed Widget._has_changed to *only* use an empty string when data and/or initial is None. False values were tripping up the conditional.

git-svn-id: http://code.djangoproject.com/svn/django/branches/newforms-admin@7366 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Brian Rosner
2008-03-27 04:20:21 +00:00
parent 8cbcc7152b
commit 10f86fd1ee
3 changed files with 29 additions and 3 deletions

View File

@@ -1717,4 +1717,25 @@ Traceback (most recent call last):
...
AttributeError: 'SongForm' object has no attribute 'cleaned_data'
If a field is not given in the data then None is returned for its data. Lets
make sure that when checking for empty_permitted that None is treated
accordingly.
>>> data = {'artist': None, 'song': ''}
>>> form = SongForm(data, empty_permitted=True)
>>> form.is_valid()
True
However, we *really* need to be sure we are checking for None as any data in
initial that returns False on a boolean call needs to be treated literally.
>>> class PriceForm(Form):
... amount = FloatField()
... qty = IntegerField()
>>> data = {'amount': '0.0', 'qty': ''}
>>> form = PriceForm(data, initial={'amount': 0.0}, empty_permitted=True)
>>> form.is_valid()
True
"""