Django管理员输入错误后出现错误信息

时间:2014-12-12 18:39:50

标签: python django django-admin

我想在django admin中为输入数据添加验证,因此我已将此类代码添加到models.py

class Score(models.Model):
  #fields description
    def save(self, *args, **kw):
        if (validating data):
            super(Score, self).save(*args, **kw)
        else:
            raise forms.ValidationError("Error input")

我无法理解我必须在ValidationError写一下这封邮件。

1 个答案:

答案 0 :(得分:2)

您应该在proper place而非save

中执行此操作
  

要为特定字段分配例外,请实例化   带有字典的ValidationError,其中键是字段名称。   我们可以更新前面的例子来将错误分配给   pub_date字段:

class Article(models.Model):
    ...
    def clean(self):
        # Don't allow draft entries to have a pub_date.
        if self.status == 'draft' and self.pub_date is not None:
            raise ValidationError({'pub_date': 'Draft entries may not have a publication date.'})
        ...