如何使用django复选框呈现复选框列表?

时间:2012-06-29 09:09:51

标签: python django forms model

我想用django创建这个表单;

[ ] parent_checkbox1  
  [ ] sub_cb1_pcb1  [ ] sub_cb2_pcb1
...
[ ] parent_checkbox10
  [ ] sub_cb1_pcb10  [ ] sub_cb2_pcb10

我可以使用以下内容呈现父复选框:

parent = forms.MultipleChoiceField(label="Parent",
                                       widget=forms.CheckboxSelectMultiple)
self.fields['parent'].choices = 'list of choices'

但是如何将sub_checkbox添加到父级?

1 个答案:

答案 0 :(得分:1)

请尝试使用jQuery dynatree插件。我想过编写一个自定义小部件,但发现这个小部件更容易安装和维护。

为此,您需要输出递归HTML:

<div id="tree">
   <ul>
      <li id="1">Element 1</li>
      <li id="2">Element 2
          <ul> ... </ul>
      </li>
   </ul>
</div>

安装js文件并调用jquery方法:

$('#tree').dynatree(parameters);