擅长:python、mysql、java
<p>因为您只有一个表单,其中包含<code>votedCat</code>的多个输入。单击任意一个按钮提交整个表单,其中包含^{<cd1>的值。如果您访问<code>request.POST.getlist('votedCat')</code>,您将看到您实际上拥有所有的值。在</p>
<p>有两种方法可以解决这个问题。第一种方法是为循环中的每个迭代使用单独的form元素—为此,只需将<code><form></code>和{<cd5>}元素移动到循环中。在</p>
<p>第二种方法是让<code>votedCat</code>输入实际上是submit按钮:</p>
<pre><code><input type="submit" name="votedCat" value="Vote for {{category}}" id={{forloop.counter}}>
</code></pre>
<p>这里的缺点是,现在在变量中有单词“Vote for”,需要在视图代码中解析出来。在</p>
<p>比这两者都好的是有一个简单的单选按钮集或带有一个提交按钮的选择框,但我知道设计要求有时会妨碍到您。在</p>
<p>最后,您应该真正使用Django的表单框架,而不是使用手动HTML和直接处理POST。在</p>