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

Joh*_*ohn 54 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" />
Run Code Online (Sandbox Code Playgroud)

如果选择了多个,我如何在view.py中访问它们?

我试过了

request.POST['checks']
Run Code Online (Sandbox Code Playgroud)

但那只能给我最后一个价值.我想要的是所有已在列表中选择的那些,例如1,3,4

谢谢

Sil*_*ght 77

试试这个:

some_var = request.POST.getlist('checks')
Run Code Online (Sandbox Code Playgroud)

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


kar*_*eek 33

这将解决您的问题,

some_var = request.POST.getlist('checks[]')
Run Code Online (Sandbox Code Playgroud)

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