2012-05-27 157 views
1

我需要一个小的帮助..我循环在db中的对象,并呈现所有对象模板,迄今如此好。但我想要的是,每个呈现的html名称字段都应该有不同的名称,以便我可以参考后面的所有名称。我的代码是这样的:python,创建动态的html名称值..

{% for p in products %} 
     <input type="number" name="name1" value="{{p.arg1}}" size="12"/> 
      <input type="number" name="name2" value="{{p-arg2}}" size="12"/> 
{% endfor %} 

,但如果我在DB 4点的对象,那么我将在模板8个渲染输入字段,但他们都将有“名”的值名1NAME2,是可以动态创建8名不同的名字,这样我可以指代所有这些在我看来再次...

感谢

回答

2

使用forloop.counter变量

{% for p in products %} 
    <input type="number" name="name-{{forloop.counter}}-arg1" value="{{p.arg1}}" size="12"/> 
    <input type="number" name="name-{{forloop.counter}}-arg2" value="{{p.arg2}}" size="12"/> 
{% endfor %} 

forloop.counter是单索引的。也有forloop.counter0索引 开始于0.

你确定那django formsets不是你需要的吗?

+0

完美的解决方案,我不知道。现在我明白了。大!非常感谢.. Django formset实际上是更清洁的解决方案。无论如何,这也是工作.. :)。再次感谢你 – doniyor