如何获取Django request.POST中所有选中复选框的值?

时间:2010-03-10 13:21:31

标签: django django-forms

嗨,我有一系列复选框,例如

<input type="checkbox" name="checks[]" value="1" />
<input type="checkbox" name="checks[]" value="2" />
<input type="checkbox" name="checks[]" value="3" />
<input type="checkbox" name="checks[]" value="4" />

如果选择多个,请如何在view.py中访问这些内容?

我试过了

request.POST['checks']

但这只给了我最后一个值。我想要的是在列表中选择的所有内容,例如1,3,4

由于

3 个答案:

答案 0 :(得分:69)

试试这个:

some_var = request.POST.getlist('checks')

some_var将包含[1,3,4](已检查的值)

答案 1 :(得分:24)

这将解决您的问题,

some_var = request.POST.getlist('checks[]')

如果你写some_var = request.POST.getlist('checks')可能无法正常工作。

答案 2 :(得分:0)

这将起作用:

<input type="checkbox" name="checks[]" value="1" />
<input type="checkbox" name="checks[]" value="2" />
<input type="checkbox" name="checks[]" value="3" />
<input type="checkbox" name="checks[]" value="4" />

views.py

some_var = request.POST.getlist('checks[]')