2016-03-27 101 views
0

我想在接受表单之前验证用户的输入。我不希望用户在我的表单的文本框中输入网址。我写了一个自定义的验证代码,但它不工作,我也没有得到任何错误。Django textfield无法通过验证

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') 

我失去了我的任何想法?

回答

1

str(cd)"('www', 'com', '.net')"。您可能想要排除包含cd中的任何字符串的值:

if any(x in value for x in cd): 
    raise ValidationError(u'dont play smart') 
+0

它的作用就像魅力!谢谢。 – YoYo