在我的symfony项目中,我有一个具有以下字段的实体:
/**
* Solde
* @ORM\Column(type="float", nullable=true)
*/
private $solde;
此字段可以为null,等于0或大于0,但不能为负。
所以我想知道如何组织该字段的断言?
我可以做这样的事情吗?
/**
* @Assert\!Negative
*/
否则我应该使用的断言是:
/ **
* @Assert \ Null ()
* @Assert\GreaterThanOrEqual(0)
* /
但是如果我同时使用这两种方法,则可能会出现问题,因为一个必须确保该值为零,而另一个必须确保其为正或等于0
如果使用的是Symfony 4.3+,则可以使用PositiveOrZero:
/**
* @Assert\PositiveOrZero
*/
如果将其与nullable=true
结合使用,则所有正数0
和null
均有效。
对于旧版本的Symfony,您可以使用:
/**
* @Assert\GreaterThanOrEqual(0)
*/
再次使用nullable=true
,您将获得相同的效果。