首页 > 解决方案 > 我不能为收音机类型选择错误选项

问题描述

我的实体中有一个标志字段(作为布尔值)。在我的表单中,我想要单选按钮。显示很好,但是当我选择 false 选项时,我会遇到一个问题,比如我什么也没选择。我该如何解决?

实体.php

 /**
 * @ORM\Column(type="boolean")
 */
private $isPublic;

表单类型.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) }}

标签: symfony4

解决方案


false不是真正的可打印值。

您必须使用一些字符串化的值,例如"0"and"1"并使用数据转换器将它们转换为布尔表示。


推荐阅读