2014-09-05 50 views
0

我有一個百分比字段在我的表單中,我希望它有0-100之間的值作爲數字。我如何強制它並返回驗證,否則?只允許0 - 100作爲百分比值的表單類型

目前我甚至可以輸入100.10這是錯誤的。

注意:0.00和100.00允許

感謝

實體:

/** 
* @var decimal 
* @ORM\Column(type="decimal", precision=5, scale=2) 
*/ 
protected $vatRate; 

表單類型:

->add(
'vatRate', 
'percent', 
array('type' => 'integer', 'attr' => array('min' => '0', 'max' =>` '100')) 
) 

回答

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; 
+0

錯誤:選擇 「類型」 的值爲 「百分比」,但預計成爲「小數」,「整數」之一 – BentCoder 2014-09-05 16:07:25

+0

我剛剛將它作爲 - > add('vatRate')並正常工作。謝謝 – BentCoder 2014-09-05 16:11:04

+0

是的,對不起,在我急匆匆地,我沒有看到你已經在使用百分比類型,所以我只是刪除了這個建議。 – 2014-09-05 16:19:41