Symfony2 自动转换十进制或整数类型的输入字段值。我的应用程序有两种语言:阿拉伯语和英语我创建了一个具有以下字段的实体:
/**
* @var float $price
*
* @ORM\Column(name="price", type="decimal", scale=2, nullable=true)
*
* @Assert\Regex(pattern="/^[0-9]+(\.\d{1,2})?$/",message="Incorrect price.")
* @Assert\Type(type="float")
* @Assert\Min(0)
*/
private $price;
在表单中,我让 sf 猜测字段类型:
$builder->add('price')
我加载表单以在阿拉伯语界面中编辑此实体。在我看到的价格字段中,١٢٫٤
而不是12.40
. 我无法保存表单,因为 HTML5 验证失败。如果我在当前字段中输入 12.40 并保存实体,将保存 12,而不是 12.40。
为什么?如何禁用它?如何验证阿拉伯数字?有什么建议么?
编辑:已解决,见下文