节点表示JSON-Schema多字段validation

使用express-jsonschema

如何validation两个字段,例如:

("quantity" == 0 && "actualQuantity" == 0) || ("quantity" > 0 && "actualQuantity" > 0)

       

网上收集的解决方案 "节点表示JSON-Schema多字段validation"

刚刚testing过,这将完成这项工作:

 { "anyOf" : [ { "properties" : { "quantity" : { "minimum" : 0, "maximum" : 0 }, "actualQuantity" : { "minimum" : 0, "maximum" : 0 } } }, { "properties" : { "quantity" : { "minimum" : 1 }, "actualQuantity" : { "minimum" : 1 } } } ] } 

你也可以使用"oneOf"而不是"anyOf" ,但是在大多数实现中, "anyOf"会更快。