在Django中,如何将一个表单错误放入我的views.py中?

时间:2010-12-05 06:39:58

标签: python html django forms

def clean_title(self):
        title = self.cleaned_data['title']
        if len(title)  < 5:
            raise forms.ValidationError("Please write more in Title.")
        return title

在我的models.py中,这通常是我在标题中设置错误的方式。

但是,如果我想在views.py中执行该操作,该怎么办?我希望设置一个类似的错误,除了我的代码逻辑。

1 个答案:

答案 0 :(得分:1)

表单错误存储在将字段名称映射到ErrorList类的字典(来自django.forms.util的ErrorDict)中。查看_clean_fields方法 - 您需要调用表单clean()方法,然后从cleaned_data属性中删除相应的字段,并执行以下操作:

your_form._errors[ "your_field" ] = ErrorList( [ "Your error message" ] )