在Django formset中为一个表单添加独特的样式

时间:2014-03-12 00:37:17

标签: django django-forms django-templates

我有一个包含四种形式的formset,并希望使用与其他形式不同的CSS渲染第四种形式 - 独特的颜色,样式等。我可以从我的html页面或其他地方执行此操作吗?

我正在寻找类似这样的伪代码:

<form action="" method="post">{% csrf_token %}
    {{ formset.management_form }}
    {{ formset.non_form_errors }}
    <div>
    {% for form in formset except the last form %}
        {% for field in form %}
            {{ field.errors }}
            {{ field.label_tag }}: {{ field }}
        {% endfor %}
    {% endfor %}
    {% for the last form in the formset %}
        {% for field in form %}
            {{ field.errors }}
            <div class="different style">
                {{ field.label_tag }}: 
                <p class="another different style">{{ field }}</p>
            </div>
        {% endfor %}
    {% endfor %}
    </div>
    <p><input type="submit" value="Submit" /></p>
</form>

1 个答案:

答案 0 :(得分:1)

请参阅documentation -

中的forloop.last
<form action="" method="post">{% csrf_token %}
    {{ formset.management_form }}
    {{ formset.non_form_errors }}
    <div>
    {% for form in formset %}
        {% if forloop.last %}
            {% for field in form %}
                {{ field.errors }}
                <div class="different style">
                    {{ field.label_tag }}: 
                    <p class="another different style">{{ field }}</p>
                </div>
            {% endfor %}
        {% else %}
            {% for field in form %}
                {{ field.errors }}
                {{ field.label_tag }}: {{ field }}
            {% endfor %}
        {% endif %}
    </div>
    <p><input type="submit" value="Submit" /></p>
</form>