我的实体中有一个标志字段(布尔值)。在我的表单中,我希望有一个单选按钮。显示是好的,但是当我选择false选项时,我遇到了一个问题,就像我什么都没选一样。我怎样才能解决这个问题呢?
Entity.php
/**
* @ORM\Column(type="boolean")
*/
private $isPublic;
FormType.php
->add('isPublic', ChoiceType::class, [
'choices' => ['private' => false, 'public' => true],
'expanded' => true,
'multiple' => false,
'label_attr'=>[
'class'=>'radio-inline'
]
])
_form.html.twig
{{ form_widget(form.isPublic) }}
{{ form_errors(form.isPublic) }}
{{ form_help(form.isPublic) }}
false
...不是一个真正的可打印的值。
你必须使用一些字符串化的值,比如 "0"
和 "1"
并使用数据变换器将它们转换为布尔值表示。