1

フィールドの1つが次のように定義されているDjangoフォームがあります。

widgets = {
    'name': forms.CheckboxSelectMultiple()
}

テンプレートは、次のループでそれらをレンダリングします。

{% for field in form %}
    <fieldset class="article-form__field">
        {{ field.label_tag }} {{ field }}
    </fieldset>
{% endfor %}

これは次のようにレンダリングされます。

<fieldset class="article-form__field">
    <label for="category-name_0">Category:</label>
    <ul id="category-name">
        <li><label for="category-name_0"><input id="category-name_0" name="category-name" type="checkbox" value="GEN" /> General information</label></li>
        <li><label for="category-name_1"><input id="category-name_1" name="category-name" type="checkbox" value="FOO" /> Food and drinks</label></li>
    </ul>
</fieldset>

要するに:<label><input></label>。ただし、出力を にしたいと思います<label></label><input>

それは可能ですか?

完全なコードはこちらです。

4

1 に答える 1

1
{% for field in form %}
    <fieldset class="article-form__field">
    {% if field.name != "category-name" %}
        {{ field.label_tag }} {{ field }}
    {% else %}
        {{ field.label_tag }}
        <ul id={{ field.auto_id }}>
        {% for checkbox in field %}
            <li> 
                <label for="{{ checkbox.id_for_label }}">
                    {{ checkbox.choice_label }}
                </label>
                {{ checkbox.tag }}
            </li>
        {% endfor %}
        </ul>
    {% endif %}
    </fieldset>
{% endfor %}
于 2016-07-25T17:23:39.530 に答える