1
0
mirror of https://github.com/django/django.git synced 2024-12-23 01:25:58 +00:00

Fixed #1767 -- boolean fields may now have validators! Thanks, Joseph.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@3467 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Jacob Kaplan-Moss 2006-07-28 00:13:10 +00:00
parent 09912cce70
commit a55fa029f7
2 changed files with 6 additions and 4 deletions

View File

@ -247,9 +247,9 @@ class Field(object):
params['is_required'] = not self.blank and not self.primary_key and not rel params['is_required'] = not self.blank and not self.primary_key and not rel
# BooleanFields (CheckboxFields) are a special case. They don't take # BooleanFields (CheckboxFields) are a special case. They don't take
# is_required or validator_list. # is_required.
if isinstance(self, BooleanField): if isinstance(self, BooleanField):
del params['validator_list'], params['is_required'] del params['is_required']
# If this field is in a related context, check whether any other fields # If this field is in a related context, check whether any other fields
# in the related object have core=True. If so, add a validator -- # in the related object have core=True. If so, add a validator --

View File

@ -434,10 +434,12 @@ class HiddenField(FormField):
(self.get_id(), self.field_name, escape(data)) (self.get_id(), self.field_name, escape(data))
class CheckboxField(FormField): class CheckboxField(FormField):
def __init__(self, field_name, checked_by_default=False): def __init__(self, field_name, checked_by_default=False, validator_list=None):
if validator_list is None: validator_list = []
self.field_name = field_name self.field_name = field_name
self.checked_by_default = checked_by_default self.checked_by_default = checked_by_default
self.is_required, self.validator_list = False, [] # because the validator looks for these self.is_required = False # because the validator looks for these
self.validator_list = validator_list[:]
def render(self, data): def render(self, data):
checked_html = '' checked_html = ''