验证复选框未映射到symfony2表单中的实体

时间:2013-08-11 23:26:23

标签: php forms validation symfony checkbox

我将非映射字段添加到symfony2表单类型:

$builder->add('terms','checkbox', array('mapped' => false,
        'constraints' => array(new NotBlank())));

但NotBlank()约束不起作用!只有当我将类型从“复选框”更改为“文本”时,它才能按预期工作。那么如何验证复选框?当然我也试过'True()','EqualTo()'和'Length(...)'约束。但没有成功。我还尝试了不同的POST值(1/0,真/假,开/关......)。

关于symfony2中表单字段验证的复选框字段和文本字段之间的最大区别是什么?

感谢名单 燕姿

2 个答案:

答案 0 :(得分:13)

NotBlank验证字符串不为空。尝试使用NotNull

True也必须有效。

  

验证值是否为true。具体来说,这将检查是否   值完全正确,正好是整数1,或者恰好是整数   字符串“1”。此约束可以应用于属性(例如,注册模型上的termsAccepted属性)。

答案 1 :(得分:8)

更新 Symfony 3.0的答案:

(Get-WmiObject win32_networkadapter | Where-Object {$_.name -eq "YOUR_NAME"} | Get-NetIPAddress).IPAddress