Django中Admin ModelForm中的多个ValidationError

时间:2015-04-08 14:52:18

标签: django admin django-1.5 validationerror

我有一个模型,在模型中引发ValidationError的clean,然后我在admin中自定义了表单。 " myfield"是一个ForeingKey。

class MyModel(models.Models):
     myfield = models...

     def clean(self):
         if check_something_on(self.myfield):
             raise ValidationError("Technical Error in myfield")
     def save(self, *kwargs):
         self.clean()
         super(MyModel, self).save(*kwargs)

我希望通过shell系统或其他方法,myfield字段始终可以。

然后,我在管理员中添加了一个如下所示的表单:

class MyModelAdminForm(forms.ModelForm):
    myfield = form...

    def clean(self):
        cleaned_data = super(MyModelAdminForm, self).clean()
        myfield = cleaned_data['myfield']
        if check_something_on(myfield):
            forms.ValidationError("User helping Error in myfield")
        return cleaned_data

在管理页面中,我最终得到了两条消息,技术错误和用户帮助错误......

有没有办法阻止这种情况?

由于

0 个答案:

没有答案