Проверка валидности не работает в Form.py Django

Мне нужно создать это правило валидации, когда Start= (start_new + start_old) >0 или является положительным и End = (end_new + end_old) >0 или является положительным, тогда ошибка валидации выдаст, что "Positive Strat и Positive End не разрешены в конъюнкции",

Но мой код ниже не проверяет правило проверки и разрешает положительные начальные и положительные конечные значения в конъюнкции.

** Когда я отладил код, значения end_new и end_old не сохраняются, поэтому валидация не работает, как я могу решить эту ошибку **

мой код в django form.py

 for i in range(count):
        start_new = int(self.data.get(f'applicationruntime_set-{i}-start_new') or 0)
        start_old = int(self.data.get(f'applicationruntime_set-{i}-start_old') or 0)
        end_new = int(self.data.get(f'applicationruntime_set-{i}-end_new') or 0)
        end_old = int(self.data.get(f'applicationruntime_set-{i}-end_old') or 0)
        if (start_new + start_old) > 0 and (end_new+end_old) > 0:
            raise ValidationError(
                f" Positive Start  values and Positive End  values are not allowed to be used in conjunction")
Вернуться на верх