还在学习django和python ......
我有一个包含许多字段的表单。我想把它们分别放在两个字段的行中,并且我正在使用表来这样做。我不能简单地遍历所有字段,因为我希望对某些事情进行更好的控制。
基本上,我要输出一行两个字段,然后如果这些字段中有任何错误,则生成包含错误的第二行。
在模板中,我一遍又一遍地重复以下模式:
<tr>
<td class="labels">Order Number:</td><td class="textentry">{{ order.ordernum }}</td>
<td class="labels">Order Status:</td><td class="textentry">{{ order.status }} </td>
</tr>
{% if order.ordernum.errors %}
{% for error in order.ordernum.errors %}
<tr class="errors"><td colspan=2> {{ error|escape }}</td>
{% endfor %}
{% if order.status.errors %}
{% for error in order.status.errors %}
<td colspan=2> {{ error|escape }}</td>
{% endfor %}
{% endif %}
</tr>
{% endif %}
其中从重复模式到重复模式的所有变化都是特定的字段名称。
重复使我想知道:在模板中有更好的方法吗?有没有办法从模板中调用函数,我可以传入字段名称?
感谢您的帮助!
W上。
答案 0 :(得分:0)
对于任何有兴趣的人,我不知道是否有更好的解决方案,但模板宏a la djangosnippets.org/snippets/363就是我解决这个问题的方法。