我有一个名为Comments的模型,其具有content = models.CharField(max_length = 100) 如果用户键入的字符超过max_length,则我想使用“ def clean_content”的形式提出验证错误。那么如何使用条件运算符。
def clean_content(self):
content = self.cleaned_data.get("content")
if ????????? < 100:
return content
else:
raise forms.ValidationError(('You exceeded max number of character'))
答案 0 :(得分:0)
简短答案:Django通常会为您处理max_length
约束,而无需亲自验证。
您可以检查content
的长度,例如:
def clean_content(self):
content = self.cleaned_data.get('content')
if len(content) <= 100:
return content
else:
raise forms.ValidationError('You exceeded max number of character')
但是您不需要需要自己实施此验证。 Django的ModelFrom
将自动检查该字段的max_length
,如果数字超过该数,则会引发错误。例如:
>>> form.errors
{'content': ['Ensure this value has at most 100 characters (it has 1000).']}
因此您无需亲自验证。