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 に答える