Python Crispy表单包括导致许多重复模板的标记

Python Crispy表单包括导致许多重复模板的标记,python,html,django,django-crispy-forms,Python,Html,Django,Django Crispy Forms,我有一个Django站点,它使用下面的模板呈现crispy forms模型表单集。使用django调试工具栏,我发现include标记多次呈现bootstrap4模板。我认为这是扼杀我的性能的原因(即3-4分钟加载一个包含100个表单的内联表单集) 如何替换include标记以避免重复渲染?我应该使用extend吗 我可以用bootstrap4 crispy forms模板中的实际html替换include标记,但是这些模板也有嵌套模板。这创造了一个构建主crispy表单模板的练习,该模板包含所

我有一个Django站点,它使用下面的模板呈现crispy forms模型表单集。使用
django调试工具栏
,我发现
include
标记多次呈现bootstrap4模板。我认为这是扼杀我的性能的原因(即3-4分钟加载一个包含100个表单的内联表单集)

如何替换
include
标记以避免重复渲染?我应该使用extend吗

我可以用bootstrap4 crispy forms模板中的实际html替换
include
标记,但是这些模板也有嵌套模板。这创造了一个构建主crispy表单模板的练习,该模板包含所有内容……这似乎是一个错误的方法。此外,我尝试用实际的html替换
bootstrap4/field.html
include标记,
field.html
仍然是重复的,并且由于使用tag='td'丢失
,数据丢失了它的表结构

{% load crispy_forms_tags %}
{% load crispy_forms_utils %}
{% load crispy_forms_field %}
{% specialspaceless %}
{% if formset_tag %}
<form {{ flat_attrs|safe }} method="{{ form_method }}" {% if formset.is_multipart %} enctype="multipart/form-data"{% endif %}>
{% endif %}
    {% if formset_method|lower == 'post' and not disable_csrf %}
        {% csrf_token %}
    {% endif %}
    <div>
        {{ formset.management_form|crispy }}
    </div>
      <div class='table-responsive'>
    <table{% if form_id %} id="{{ form_id }}_table"{% endif%} class="table table-hover table-sm" id='dispositionTable'>
        <thead>
            {% if formset.readonly and not formset.queryset.exists %}
            {% else %}
                <tr>
                    {% for field in formset.forms.0 %}
                        {% if field.label and not field|is_checkbox and not field.is_hidden %}
                            <th for="{{ field.auto_id }}" class="form-control-label {% if field.field.required %}requiredField{% endif %}">
                                {{ field.label|safe }}{% if field.field.required %}<span class="asteriskField">*</span>{% endif %}
                            </th>
                        {% endif %}
                    {% endfor %}
                </tr>
            {% endif %}
        </thead>
        <tbody>
            {% for form in formset %}
                {% if form_show_errors and not form.is_extra %}
                    {% include "bootstrap4/errors.html" %}
                {% endif %}
                <tr>
                    {% for field in form %}
                        {% include 'bootstrap4/field.html' with tag="td" form_show_labels=False %}
                    {% endfor %}
                </tr>
            {% endfor %}
        </tbody>
    </table>
</div>
{% include "bootstrap4/inputs.html" %}
{% if formset_tag %}</form>{% endif %}
{% endspecialspaceless %}
{%load crispy_forms_tags%}
{load crispy_forms_utils%}
{%load crispy_forms_field%}
{%specialspaceless%}
{%if formset_tag%}
{%endif%}
{%if formset_method | lower=='post'且不禁用_csrf%}
{%csrf_令牌%}
{%endif%}
{{formset.management{u form|crispy}}
{%如果formset.readonly而不是formset.queryset.exists%}
{%else%}
{formset.forms.0%}
{%if field.label而非field | is_复选框而非field.is_hidden%}
{field.label | safe}{%if-field.field.required%}*{%endif%}
{%endif%}
{%endfor%}
{%endif%}
{formset%中表单的%s}
{%if form_show_errors而非form.is_extra%}
{%include“bootstrap4/errors.html”%}
{%endif%}
{%形式的字段为%}
{%include'bootstrap4/field.html'和tag=“td”form\u show\u labels=False%}
{%endfor%}
{%endfor%}
{%include“bootstrap4/inputs.html”%}
{%if formset_tag%}{%endif%}
{%endspecialspaceless%}