6

Symfony2 Form 组件似乎无法处理这种常见情况。下面是在我的 html 中想要的

在此处输入图像描述

代码如下所示:

        ->add('code', 'choice', array(
            'choices' => array(
                'Food'  => array('pizza', 'burger', 'icecream'),
                'Music' => array('poney', 'little', 'pocket'),
            ),
            'multiple' => true,
            'expanded' => true,
            'required' => true
        ));

这实际上给出了错误的输出:

在此处输入图像描述

这很奇怪,因为案例expanded => false处理得当

在此处输入图像描述

请问这种情况怎么处理?

4

1 回答 1

14

好的,这是 form_theme 解决方案

{% block _user_code_widget %}
    <div {{ block('widget_container_attributes') }}>
        {% for name, choices in form.vars.choices %}
            <ul>
                <li class="checkbox_category">
                    <input type="checkbox" class="checkallsub" /> {{ name }}
                </li>

                {% for key,choice in choices %}
                    <li class="indent">
                        {{ form_widget(form[key]) }}
                        {{ form_label(form[key]) }}
                    </li>
                {% endfor %}
            </ul>
        {% endfor %}
    </div>
{% endblock %}

当然缺少额外的 js 层,但你明白了。

于 2012-11-29T10:11:27.770 回答