【发布时间】:2013-02-06 08:28:47
【问题描述】:
我是 Web2py 的新手,正在尝试使用自定义验证器。
class IS_NOT_EMPTY_IF_OTHER(Validator):
def __init__(self, other,
error_message='must be filled because other value '
'is present'):
self.other = other
self.error_message = error_message
def __call__(self, value):
if isinstance(self.other, (list, tuple)):
others = self.other
else:
others = [self.other]
has_other = False
for other in others:
other, empty = is_empty(other)
if not empty:
has_other = True
break
value, empty = is_empty(value)
if empty and has_other:
return (value, T(self.error_message))
else:
return (value, None)
我不明白如何在我的桌子上使用它:
db.define_table('numbers',
Field('a', 'integer'),
Field('b', 'boolean'),
Field('c', 'integer')
我想以一种在勾选“b”时不能将“c”保留为黑色的方式使用它。
【问题讨论】:
标签: python web2py customvalidator custom-validators