2016-06-13 105 views
0

我试图创建一个按钮列表,每个按钮对应于我的数据库中的一个对象。然而,当我按其中的一个,它总是产生的最后一个按钮被发送回浏览的价值:试图为每个对象实例创建一个按钮

 {% if segmenter %} 
     <form method="post"> 
     {% csrf_token %} 
     <ul> 
      {% for segment in segments %} 
      <li> 
       <input type="hidden" name="id" value="{{ segment.pk }}"/> 
       <button type="submit">{{ segment }}</button> 
      </li> 
      {% endfor %} 
     </ul> 
     {% else %} 
      <strong>No segments registered. </strong><br /> 
     {% endif %} 

回答

0

表项都受到name区别,但您使用的是相同的name您投入。除了使用一种形式意味着你打算在输入区分时发送所有的输入。

你应该这样做:

{% if segmenter %} 
{% csrf_token %} 
<ul> 
    {% for segment in segments %} 
    <form method="post"> 
    <li> 
     <input type="hidden" name="id_{{ segment.pk }}" value="{{ segment.pk }}"/> 
     <button type="submit">{{ segment }}</button> 
    </li> 
    </form> 
    {% endfor %} 
</ul> 
{% else %} 
    <strong>No segments registered. </strong><br /> 
{% endif %} 

该帖子在单独的窗体上的每个按钮的点击

相关问题