0

我有来自 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属性input值为choice{{ forloop.counter }}。所以,它会是这样的:choice1、choice2 等等……

views.py我有以下行:

selected_choice = p.choice_set.get(pk=request.POST['choice'])

pk必须是数字。它是如何在这里工作的?

4

1 回答 1

1

id 仅用于标签。它不会在表单发送到服务器的数据中使用。单选按钮的值(value="{{ choice.id }}",一个普通数字)是发送的内容。

也就是说,views.py 文件中的 id 和 line 是不相关的。

于 2013-09-07T12:59:42.400 回答