mirror of
https://github.com/django/django.git
synced 2025-07-25 14:14:13 +00:00
Fixed #17888 -- no longer silence exceptions inside of check_test. Thanks to brutasse for the patch.
This commit is contained in:
parent
e4ea536774
commit
6a5a12ea3e
3 changed files with 9 additions and 13 deletions
|
@ -507,11 +507,7 @@ class CheckboxInput(Widget):
|
|||
|
||||
def render(self, name, value, attrs=None):
|
||||
final_attrs = self.build_attrs(attrs, type='checkbox', name=name)
|
||||
try:
|
||||
result = self.check_test(value)
|
||||
except: # Silently catch exceptions
|
||||
result = False
|
||||
if result:
|
||||
if self.check_test(value):
|
||||
final_attrs['checked'] = 'checked'
|
||||
if not (value is True or value is False or value is None or value == ''):
|
||||
# Only add the 'value' attribute if a value is non-empty.
|
||||
|
@ -525,7 +521,7 @@ class CheckboxInput(Widget):
|
|||
return False
|
||||
value = data.get(name)
|
||||
# Translate true and false strings to boolean values.
|
||||
values = {'true': True, 'false': False}
|
||||
values = {'true': True, 'false': False}
|
||||
if isinstance(value, six.string_types):
|
||||
value = values.get(value.lower(), value)
|
||||
return value
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue