Django Валидация с помощью правила and or
Условие должно быть только если это поле заполнено, другие поля заполнять не нужно. Нет, с этим кодом я должен заполнить все поля
if (self.start==None and self.end==None) or (self.running==None and self.walking==None ) :
raise ValidationError(
{
"start": _("Need to be filled"),
"end": _("Need to be filled"),
"running": _("Need to be filled"),
"walking": _("Need to be filled")
}
)
Попробуйте это:
if (self.start==None and self.end==None) or (self.start!=None and self.end!=None) or (self.running==None and self.walking==None) or (self.running!=None and self.walking!=None):
raise ValidationError(
{
"start": _("Need to be filled"),
"end": _("Need to be filled"),
"running": _("Need to be filled"),
"walking": _("Need to be filled")
}
)