【发布时间】:2010-09-22 20:14:42
【问题描述】:
我刚刚开始在 Django 中构建原型应用程序。我通过Django app tutorial on the Django site 开始工作,这非常有帮助,并为我提供了入门所需的内容。现在我有几个我希望是非常简单的问题:
我想在views.py 中放置一个循环,循环遍历从表单传入的一组变量。所以我在 HTML 表单中有很多项目,每个项目都有一个 SELECT 下拉列表,供人们选择 0-10 的分数,如下所示:
<select name="score1">
<option value=0 SELECTED>No score</option>
<option value=1>1</option>
<option value=2>2</option>
<option value=3>3</option>
<option value=4>4</option>
<option value=5>5</option>
<option value=6>6</option>
<option value=7>7</option>
<option value=8>8</option>
<option value=9>9</option>
<option value=10>10</option>
</select>
所以我有 100 个这样的变量,score1、score2、score3、...、score99、score100。提交表单时,我想遍历这些变量中的每一个并查看它是否已设置(即不是 0),如果是,我想将该值存储在数据库中的合适位置。我的问题是我不知道如何遍历这些变量。 我猜我想要这样的东西:
for o in request.POST.all
endfor
但是我真的不知道该怎么办。
我不是在找人为我编写代码,真的:我只是想要一些关于如何在 python / Django 中编写这样的循环的指导,也许还有一些关于我的好参考指南的指针可以在线查看或购买,这将使我能够访问这种东西。
另外,上面的选择对象我几乎是手动创建的,我真的很希望能够使用循环首先在模板中生成它。我的模板目前有这个:
<table>
{% for movie in movie_list %}
<tr>
<td> {{ movie }} </td>
<td>
<select name="score{{ movie.id }}">
<option value=0 SELECTED>No score</option>
<option value=1>1</option>
<option value=2>2</option>
<option value=3>3</option>
<option value=4>4</option>
<option value=5>5</option>
<option value=6>6</option>
<option value=7>7</option>
<option value=8>8</option>
<option value=9>9</option>
<option value=10>10</option>
</select>
</td></tr>
{% endfor %}
</table>
我觉得必须有一种方法可以创建一个从 1 计数到 10 的简单循环,它会为我生成大部分选项,但我不知道该怎么做...
【问题讨论】: