Django:没有li / *的formset错误

时间:2018-06-13 10:04:54

标签: django django-templates formset

我正在使用formset。 formset.non_form_errors完全按照我需要的方式显示。但是,for dict in formset.errors中的字段特定错误始终显示在<li>标记中。我尝试了.as_text,但是只添加了*(并删除了li)。但我也不需要*。

任何可以帮助我的人?​​

{% if formset.total_error_count %}
    {% if formset.non_form_errors %}
        {% for error in formset.non_form_errors %}
            <div class="alert alert-warning" role="alert">
                {{ error|escape }}
            </div>
        {% endfor %}
    {% endif %}
    {% for dict in formset.errors %}
        {% for error in dict.values %}
            <div class="alert alert-warning" role="alert">
                {{ error|escape }}
            </div>
        {% endfor %}
    {% endfor %}
{% endif %}

<form method="post">
    {% csrf_token %}
    {{ formset.management_form }}

1 个答案:

答案 0 :(得分:0)

可以通过在表单循环中移动单个错误来解决问题:

{% if formset.total_error_count %}
    {% if formset.non_form_errors %}
        {% for error in formset.non_form_errors %}
            <div class="alert alert-warning" role="alert">
                {{ error|escape }}
            </div>
        {% endfor %}
    {% endif %}
{% endif %}

{% for form in formset %}

    {% if form.quantity.errors %}
        <div class="alert alert-warning" role="alert">
            {% for error in form.quantity.errors %}
                {{ error|escape }}
            {% endfor %}
        </div>
    {% endif %}