2016-09-29 18 views
0

私はhtmlテンプレートにpythonリスト(list_exp)を渡しました。そして今、私は辞書でview.pyの複数のチェックボックスの結果を取得したいと思います。私が知っていることから、djangoのチェックボックスの値を取得する

<form action="" method="post"> 
{% for name in list_exp%} 
<input type="checkbox" name="{{name}}"><label> Experiment : {{name}}</label> 
<br> 
{% endfor %} 
<input type="submit" value="Submit"> 
</div> 
</form> 
+1

予想通り

request.POST.getlist('list_exp') 

は、リストを返しますか? – GAEfan

+0

通常、フォームを提出した後、バックエンドは{{name}}の中にあるリクエストargsを探しますが、defualtsが起こるのを防ぐためにjquery postを使用します。つまり、私はこのようなことをテンプレート上で行うことができます。 var value = $( '#checkbox')。( ':チェック済み'); $ .post(/ endpoint、{"{{name}}":value}、function(data){}); – reticentroot

答えて

0

、あなたはすべての入力チェックボックスに同じ名前を与えた場合、あなたが参照できる {真/偽..... list_exp [0]::真/偽、list_exp [1]}それらをあなたのviews.pyのリストとしてそれらに追加します。 views.pyで

{% for name in list_exp %} 
    <input type="checkbox" name="list_exp"><label> Experiment : {{name}}</label> 
    <br> 
{% endfor %} 

そして:テンプレートでそう

フォーム検証の間、または後に

関連する問題