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")
            }
        )
Вернуться на верх