我正在尝试创建一个包含一些可选字段的表单(将它们留空),为此,我添加了所需的=> formbuilder的错误选项......
$builder->add('twitter', 'url', array('required' => 'false'));
实体没有任何验证限制......
/**
* @var string
*
* @ORM\Column(name="twitter", type="string", length=50)
*/
private $twitter;
还试图清除dev中的缓存,prod with debug true / false。但是表单在加载时仍然具有必需的属性:$
<input type="url" id="post_add_twitter" name="post_add[twitter]" required="required" />
我的设置通过 php app / check.php
我做错了什么?
EDITED:Symfony版本2.1.7,PHP版本5.4.7
答案 0 :(得分:3)
'required'属性采用布尔值,而不是字符串:
$builder->add('twitter', 'url', array('required' => false));
我看起来并不太深,但我认为这个属性在某些时候是类型转换的,这意味着任何字符串(除了'')都会评估为true,并迫使你的字段成为必需