我有Django教程中的以下代码:
{% for choice in poll.choice_set.all %}
<input type="radio" name="choice" id="choice{{ forloop.counter }}" value="{{ choice.id }}" />
<label for="choice{{ forloop.counter }}">{{ choice.choice_text }}</label><br />
{% endfor %}
还有一些我不明白的事情。
id
的{{1}}属性的值为input
。所以,它将是这样的: choice1,choice2等......
在choice{{ forloop.counter }}
我有以下一行:
views.py
但selected_choice = p.choice_set.get(pk=request.POST['choice'])
必须是一个数字。
它在这里如何运作?
答案 0 :(得分:1)
id仅用于标签。它不会在表单发送到服务器的数据中使用。单选按钮(value="{{ choice.id }}"
,一个普通数字)的值是发送的。
换句话说,views.py文件中的id和行不相关。