Author: jezdez
Date: 2011-05-03 04:52:30 -0700 (Tue, 03 May 2011)
New Revision: 16148

Modified:
   django/trunk/django/forms/fields.py
   django/trunk/tests/regressiontests/forms/tests/fields.py
Log:
Fixed #13770 -- Extended BooleanField form field to also clean `u'false'` to 
`False`. Thanks, jordanb and Claude Paroz.

Modified: django/trunk/django/forms/fields.py
===================================================================
--- django/trunk/django/forms/fields.py 2011-05-03 11:52:20 UTC (rev 16147)
+++ django/trunk/django/forms/fields.py 2011-05-03 11:52:30 UTC (rev 16148)
@@ -605,7 +605,7 @@
         # will submit for False. Also check for '0', since this is what
         # RadioSelect will provide. Because bool("True") == bool('1') == True,
         # we don't need to handle that explicitly.
-        if value in ('False', '0'):
+        if isinstance(value, basestring) and value.lower() in ('false', '0'):
             value = False
         else:
             value = bool(value)

Modified: django/trunk/tests/regressiontests/forms/tests/fields.py
===================================================================
--- django/trunk/tests/regressiontests/forms/tests/fields.py    2011-05-03 
11:52:20 UTC (rev 16147)
+++ django/trunk/tests/regressiontests/forms/tests/fields.py    2011-05-03 
11:52:30 UTC (rev 16148)
@@ -698,6 +698,8 @@
         self.assertEqual(False, f.clean('0'))
         self.assertEqual(True, f.clean('Django rocks'))
         self.assertEqual(False, f.clean('False'))
+        self.assertEqual(False, f.clean('false'))
+        self.assertEqual(False, f.clean('FaLsE'))
 
     # ChoiceField 
#################################################################
 

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to django-updates@googlegroups.com.
To unsubscribe from this group, send email to 
django-updates+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-updates?hl=en.

Reply via email to