我的表单中有一个百分比字段,我希望它的值介于0到100之间。我怎么能强制它并返回验证呢?
目前我甚至可以输入100.10,这是错误的。
注意:允许0.00和100.00
由于
ENTITY:
/**
* @var decimal
* @ORM\Column(type="decimal", precision=5, scale=2)
*/
protected $vatRate;
表格类型:
->add(
'vatRate',
'percent',
array('type' => 'integer', 'attr' => array('min' => '0', 'max' =>` '100'))
)
答案 0 :(得分:3)
向实体添加constraint
use Symfony\Component\Validator\Constraints as Assert;
/* ... */
/**
* @var decimal
* @ORM\Column(type="decimal", precision=5, scale=2)
* @Assert\Range(
* min = 0,
* max = 100,
* minMessage = "Min % is 0",
* maxMessage = "Max % is 100"
* )
*/
protected $vatRate;
答案 1 :(得分:1)
在您的实体中使用范围约束:
http://symfony.com/doc/current/reference/constraints/Range.html
use Symfony\Component\Validator\Constraints as Assert;
/**
* @var decimal
* @ORM\Column(type="decimal", precision=5, scale=2)
* @Assert\Range(
* min = 0,
* max = 100
* )
*/
protected $vatRate;