你好,我有类似的模型
class mymodel(models.Model):
a = models.CharField(blank=True, null=True, max_length=255)
b = models.CharField(blank=True, null=True, max_length=255)
c = models.CharField(blank=False, null=False, max_length=255)
由于我将django管理员用作存储在模型中的数据的后端控制器,因此我想使其中任何一个都不为空
例如,用户必须填充a
或填充b
或both
才能填充,但是如果both
为空,则必须抛出错误
答案 0 :(得分:2)
您可以像这样添加custom验证
class mymodel(models.Model):
a = models.CharField(blank=True, null=True, max_length=255)
b = models.CharField(blank=True, null=True, max_length=255)
c = models.CharField(blank=False, null=False, max_length=255)
def clean(self):
if not (self.a and self.b):
raise ValidationError(....)