我正在使用Symfony4。我将保存一个十进制输入,然后Easy管理员说“此值必须是字符串”,它将在HTML中生成文本输入。
我尝试不更改类型,也将类型设置为数字。我也尝试将scale选项设置为“强制”类型,但它继续问我一个字符串...
easy_admin.yaml
- { property: 'points', label: 'BO.label.points', type: 'number' }
我的实体的财产
/**
* @var float|null
* @ORM\Column(type="decimal", nullable=false, precision=12, scale=3, options={"default":0})
* @Gedmo\Versioned
*/
private $points;
我会保存自己的价值。当我写3时,这是不好的,因为Easy Admin正在等待纯字符串。
编辑:我将这些选项添加到我的数字类型中:
- { property: 'points', label: 'BO.label.points', type: 'number', type_options: { html5: true, input: 'number' }}
无论如何,Easy Admin总是询问一个字符串。有什么想法吗?
感谢您的帮助。
答案 0 :(得分:0)
如果我“覆盖”实体中的默认约束似乎没问题。
如果我这样写我的财产:
/**
* @var float|null
* @ORM\Column(type="decimal", nullable=false, precision=12, scale=3, options={"default":0})
* @Assert\Type(type="float", message = "The value {{ value }} must be of type {{ type }}")
* @Gedmo\Versioned
*/
private $points;
因此,当我使用浮点类型指定Assert \ Type时,我的值将正确保存。
我希望对其他人有帮助。