我使用ZF2 + DoctrineORMModule +布尔字段
/**
* @ORM\Column(type="boolean", nullable=false, name="is_public")
* @Annotation\Required(false)
* @Annotation\AllowEmpty()
* @Annotation\Attributes({"placeholder":"Is Public"})
* @Annotation\Filter({"name":"boolean"})
* @Annotation\Options({"label":"Is Public"})
*/
private $isPublic;
这种形式的使用原则注释建设者和学说实体水化内置设置,通过注释的形式。该实体然后绑定到这个表单。传递布尔字段时有一个问题,因为任何值都被视为false,除1之外,传递0会导致错误消息“不能为空”。
有人可以请告诉我如何正确使用布尔字段使用此方法?理想情况下,我希望能够在验证字段之前使用过滤器?不仅如此,验证却忽略了AllowEmpty()和Required(false)字段。
亲切的问候,
ISE
嗨,是的,输入是通过休息JSON来,并在后数据中明确可用。这个字段不是复选框,我在Required和AllowEmpty中加入了希望绕过验证器。基本上我无法将其设置为false并通过验证程序。我必须设置nullable = true并将db中除1以外的任何值视为false。如果我将该类型设置为复选框,请启动它的工作? – ise