Symfony表单允许浮动但没有错误,并且默默地舍入。如果输入值是浮点数,如何引发错误?
我的实体看起来像这样;
use Symfony\Component\Validator\Constraints as Assert;
class Charge
{
/**
* @Assert\NotBlank(message="Amount is required.")
* @Assert\Type(type="int", message="Amount must be an integer.")
*/
protected $amount;
}
我的表单看起来像这样;
class NewChargeType extends AbstractType
{
/**
* @param FormBuilderInterface $builder
* @param array $options
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->setMethod('POST')
->add('amount', Type\IntegerType::class);
}
}
答案 0 :(得分:0)
您可以尝试添加Regex
验证,仅需要整数
use Symfony\Component\Validator\Constraints as Assert;
class Charge
{
/**
* @Assert\NotBlank(message="Amount is required.")
* @Assert\Type(type="int", message="Amount must be an integer.")
* @Assert\Regex("/^-?[0-9]\d*$/", message="Amount must be an integer.")
*/
protected $amount;
}