我想在接受表单之前验证用户输入。我不希望用户在我的表单的文本字段中输入网址。我写了一个自定义验证码,但它不起作用,我也没有收到任何错误。
message_body=models.TextField(validators=[validate_thread_field])
Validators.py
def validate_thread_field(value):
cd= ('www','com','.net',)
if str(cd) in value:
raise ValidationError(u'dont play smart')
知道我缺少什么吗?
答案 0 :(得分:1)
str(cd)
是"('www', 'com', '.net')"
。您可能希望排除包含cd
中的任何字符串的值:
if any(x in value for x in cd):
raise ValidationError(u'dont play smart')