手工编码表单与django表单

手工编码表单与django表单,django,Django,django中的手工编码表单(以及views.py中的所有验证)与使用django的表单库之间是否存在性能差异?如果它们大致相同,在哪些情况下会使用内置的表单来手工编码表单 另外,如何手工编码HTML模板并使用django块标记等重复使用某些区域?您是否有疯狂的零容忍性能要求?比如:如果一个页面需要额外的几毫秒来呈现,人们会真的死亡或受到伤害,还是你会被解雇 我对此表示怀疑,所以让框架来提升到您需要对HTML输出进行更多控制的程度——这实际上更可能是一个场景,而不是您需要避免执行一些Python

django中的手工编码表单(以及views.py中的所有验证)与使用django的表单库之间是否存在性能差异?如果它们大致相同,在哪些情况下会使用内置的表单来手工编码表单


另外,如何手工编码HTML模板并使用django块标记等重复使用某些区域?

您是否有疯狂的零容忍性能要求?比如:如果一个页面需要额外的几毫秒来呈现,人们会真的死亡或受到伤害,还是你会被解雇

我对此表示怀疑,所以让框架来提升到您需要对HTML输出进行更多控制的程度——这实际上更可能是一个场景,而不是您需要避免执行一些Python来节省(完全猜测)15毫秒

当你确实需要更多的控制时,最好是在一些手工制作的HTML中拼接,或者——甚至更好——为表单字段创建一个include/partial,你可以在任何地方重用,这样可以节省你手工编写的时间,但仍然比
myform.as\p
等提供更多的灵活性

下面是我经常使用和修改的一个粗略片段,它让我能够控制表单字段,还让我能够利用Django模板框架来节省时间:

在我的模板中:

{% for form_field in myform %}
   {% include "path/to/partials/form_field_as_p.html" %}
{% endfor %}
在这个表单中_field _作为_p.html,类似于:

{% if not form_field.is_hidden %}
    <p>

    {% if form_field.errors %}
      {% for error in form_field.errors %}
      <span class="errorlist">{{error}}</span>
      {% endfor %}
    {% endif %}         

    {{ form_field.label_tag }}

    {% if form_field.field.required %}
        <span class="required">*</span>
    {% endif %}

    {{ form_field }}

    {% if form_field.help_text %}
        <span class="form-help-text">{{ form_field.help_text }}</span>
    {% endif %}

    </p>    
{% else %}
    <div>{{ form_field }}</div> {# hidden field #}
{% endif %}
{%if not form_field.is_hidden%}

{%if form_field.errors%}
{%form_字段中的错误。错误%}
{{error}}
{%endfor%}
{%endif%}
{{form_field.label_tag}}
{%if form_field.field.required%}
*
{%endif%}
{{form_field}}
{%if form_field.help_text%}
{{form_field.help_text}
{%endif%}

{%else%} {{form_field}}{{hidden field} {%endif%}
您是否有疯狂的零容忍性能要求?比如:如果一个页面需要额外的几毫秒来呈现,人们会真的死亡或受到伤害,还是你会被解雇

我对此表示怀疑,所以让框架来提升到您需要对HTML输出进行更多控制的程度——这实际上更可能是一个场景,而不是您需要避免执行一些Python来节省(完全猜测)15毫秒

当你确实需要更多的控制时,最好是在一些手工制作的HTML中拼接,或者——甚至更好——为表单字段创建一个include/partial,你可以在任何地方重用,这样可以节省你手工编写的时间,但仍然比
myform.as\p
等提供更多的灵活性

下面是我经常使用和修改的一个粗略片段,它让我能够控制表单字段,还让我能够利用Django模板框架来节省时间:

在我的模板中:

{% for form_field in myform %}
   {% include "path/to/partials/form_field_as_p.html" %}
{% endfor %}
在这个表单中_field _作为_p.html,类似于:

{% if not form_field.is_hidden %}
    <p>

    {% if form_field.errors %}
      {% for error in form_field.errors %}
      <span class="errorlist">{{error}}</span>
      {% endfor %}
    {% endif %}         

    {{ form_field.label_tag }}

    {% if form_field.field.required %}
        <span class="required">*</span>
    {% endif %}

    {{ form_field }}

    {% if form_field.help_text %}
        <span class="form-help-text">{{ form_field.help_text }}</span>
    {% endif %}

    </p>    
{% else %}
    <div>{{ form_field }}</div> {# hidden field #}
{% endif %}
{%if not form_field.is_hidden%}

{%if form_field.errors%}
{%form_字段中的错误。错误%}
{{error}}
{%endfor%}
{%endif%}
{{form_field.label_tag}}
{%if form_field.field.required%}
*
{%endif%}
{{form_field}}
{%if form_field.help_text%}
{{form_field.help_text}
{%endif%}

{%else%} {{form_field}}{{hidden field} {%endif%}