阳性验证检查Django不工作



当Start=(Start_new+Start_old(>0或为正并且End=(End_new+End_old(>0或为正,则验证错误将引发"0";正Strat和正End不允许出现在";,

但在我下面的代码中,它没有检查验证规则,也不允许在连接中使用正的开始值和正的结束值。

我在django表单.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")

尝试更改优先级:

((start_new + start_old) > 0) and ((end_new+end_old) > 0) 

但这种方式更好:

(start_new > start_old) and (end_new > end_old)

当然,OOP要好得多:

if not self.date_range_is_valid():
...

并且应该在某个地方定义方法CCD_ 1。它可以帮助您制定验证方法,并根据业务需求进行更改。

相关内容

  • 没有找到相关文章

最新更新