Symfony复选框字段默认选中

时间:2014-09-13 11:23:23

标签: symfony checkbox formbuilder

当我创建一个新实体时,我希望默认选中某个复选框。正如文档所说,我使用了data属性,但现在当我编辑同一个实体时,复选框被检查,值为0或1。

我怎样才能做到这一点,当我做一个新实体时,勾选复选框。但当我取消选中它,存储实体并编辑它时,它会使用存储的值吗?

 $builder
            ->add(
                'naamOrganisatie',
                'text',
                array(
                    'label' => 'Naam organisatie',
                    'required' => false)
            )
            ->add('isOrganisatie', 'checkbox', array('required' => false, 'data' => true))
            ->add('naam', 'text', array('required' => false))
            ->add('voornaam', 'text', array('required' => false))
            ->add('vestigingsnummer');

3 个答案:

答案 0 :(得分:2)

使用以下实体构造函数中的Init isOrganisatie数据:

public function __construct() {
    $this->isOrganisatie = true;
}

您正在使用表单中的数据属性覆盖该值。

答案 1 :(得分:1)

在Entity / Object.php文件中

public function __construct() {
    $this->setIsOrganisatie(true); 
}

答案 2 :(得分:0)

您可以在Entity attribut中初始化默认值

/**
 * @var boolean
 *
 * @ORM\Column(name="is_organisatie", type="boolean", nullable=true)
 */
private $isOrganisatie = true;