从for循环渲染的Django模板
Django Template rendering from for loop
我有一个简单的表单,其中的字段名称为 company_name、位置、国家/地区以及我从 views.py 呈现为 {'form':form}
的其他一些内容。
在模板上调用表单的常用方法是 {% for field in form %}
,它按照 form.py 文件中字段属性的顺序呈现字段。另一种向每个字段添加特殊 类 和样式的方法我将每个字段称为 {{ form.company_name }}
.
我有另一个 for 循环,它只包含表单字段的名称 {% for element in fieldnames %}
。
我想按照字段名中的顺序呈现表单字段。我尝试使用以下示例进行分配,但没有用。
{% for element in fieldnames %}
{{ form.element }}
{% endfor %}
为什么我们不能像上面那样使用 for 循环进行渲染,但是如果我用 {{ form.company_name }}
之类的字段名称替换元素名称,它就可以工作了
{% for name in fieldnames %}
{% for field in form %}
{% if field.name == name %}
{{ field }}
{% endif %}
{% endfor %}
{% endfor %}
我有一个简单的表单,其中的字段名称为 company_name、位置、国家/地区以及我从 views.py 呈现为 {'form':form}
的其他一些内容。
在模板上调用表单的常用方法是 {% for field in form %}
,它按照 form.py 文件中字段属性的顺序呈现字段。另一种向每个字段添加特殊 类 和样式的方法我将每个字段称为 {{ form.company_name }}
.
我有另一个 for 循环,它只包含表单字段的名称 {% for element in fieldnames %}
。
我想按照字段名中的顺序呈现表单字段。我尝试使用以下示例进行分配,但没有用。
{% for element in fieldnames %}
{{ form.element }}
{% endfor %}
为什么我们不能像上面那样使用 for 循环进行渲染,但是如果我用 {{ form.company_name }}
之类的字段名称替换元素名称,它就可以工作了
{% for name in fieldnames %}
{% for field in form %}
{% if field.name == name %}
{{ field }}
{% endif %}
{% endfor %}
{% endfor %}