如何在TurboGears中验证具有可变参数的函数?

2022-10-02 02:28:32 发布

您现在位置:Python中文网/ 问答频道 /正文

对于具有固定数量参数的函数,验证工作正常, 例如:

@validate(validators= {'foo': bar })
def func(self, foo=None):
    pass

然而,我面临着验证参数数目未知的函数的困难,例如

def func(*args, **kwargs):
    '''do something'''
    pass

知道我应该做什么吗


Tags: 函数selfnone参数数量foodefbarargspassvalidatekwargsfuncvalidators数目
1条回答
网友
1楼 ·

参数有什么规则吗?好像它们都是同一类型的重复或类似的东西

TurboGears2实际上接受使用validate方法作为验证器的任何内容。因此,您可以使用Formencode模式作为验证器http://turbogears.readthedocs.org/en/latest/turbogears/validation.html#schema-validation,或者您可以滚动自己的类并从中生成一个TGValidationErrorhttp://turbogears.readthedocs.org/en/latest/reference/classes.html#tg.validation.TGValidationError