2

django は値のないチェックボックスを表示するため、フォーム (a ) を適切に保存できません (ModelFormすべてのフィールドで value="true" が期待されますが、チェックされていないものとチェックされていないものがあります...しかし、そうではありません)。フォームを送信すると、POST でデータが受信されません。

以下は私のテンプレートの一部です:

 <div>
      {{form.displayAge.label_tag}}
      {{form.displayAge}} 
      {{form.displayAge.errors}}
 </div>

{{form.displayAge}}次のようにレンダリングされます。

<input checked="checked" type="checkbox" name="displayAge" id="id_displayAge">

しかし...値がないため、チェックボックスのチェック/チェックを外すことは無力です! 私は何をすべきか?フォーム フィールドに手で入力するのは避けたいです。

4

1 に答える 1

1

いいえ、valueフィールドは必要ありません。チェックボックスがチェック"on"されている場合、何も指定されていない場合、ブラウザはデフォルトで値として送信します。

ビューでこの値が得られない場合は、他の何かが間違っています。request.POSTDjango フォームを使用しているため、とにかく手動でチェックするべきではないことに注意してください: use form.cleaned_data.

于 2013-02-19T14:47:22.500 に答える