PHP/Symfony2表单复选框字段

R.A*_*tim 6 php checkbox symfony

奥姆

My\SampleBundle\Entity\Subject:
    type: entity
    id:
        id:
            type: integer
            generator: { strategy: AUTO }
    fields:

        // ...

        motion:
            type: smallint
            unsigned: true
Run Code Online (Sandbox Code Playgroud)

类型

public function buildForm(FormBuilderInterface $builder, array $options)
{
    // ...

    $builder->add('motion', 'checkbox', array(
        'required'  => false
    ));

    // ...
}
Run Code Online (Sandbox Code Playgroud)

错误

给出的类型为"布尔","整数"的预期参数


我想通过复选框打开和关闭.该值由0和1分配.
即使给出了value参数,它也没用.

$builder->add('motion', 'checkbox', array(
    'value'     => 1,
    'required'  => false
));
Run Code Online (Sandbox Code Playgroud)

我应该怎么做?

Alt*_*PHP 10

在ORM映射定义中,您必须定义motion为布尔值而不是smallint.而且,仅供参考,Symfony将TINYINT解释为布尔值,将任何其他整数SQL类型解释为整数.

My\SampleBundle\Entity\Subject:
    type: entity
    id:
        id:
            type: integer
            generator: { strategy: AUTO }
    fields:

        // ...

        motion:
            type: boolean
Run Code Online (Sandbox Code Playgroud)