在CheckboxSelectMultiple中预选一组选项

时间:2015-03-31 11:20:29

标签: python django

我正在尝试创建一个包含动态选择的MultipleChoiceField表单字段。我想预先选择一组(动态)这些,而其余部分应保持不受控制。有没有办法做到这一点?

widget=forms.CheckboxSelectMultiple(attrs={'checked': 'checked'})

将导致检查所有选项,但是我只需要检查一些选项。

非常感谢帮助

1 个答案:

答案 0 :(得分:0)

您必须将这些选项作为字段的首字母。例如:

    my_field = forms.MultipleChoiceField(
         widget=forms.CheckboxSelectMultiple(),
         choices=(('foo', 'Foo text'), ('bar', 'Bar text'), ('baz', 'Baz text')),
         initial=('foo', 'bar'))
    )

如果希望这些值是动态的,则必须在渲染表单之前的任何步骤更改字段的初始参数。这可以这样实现:

    my_dynamic_initials = ('foo', 'bar')
    my_form.fields['my_field'].initial = my_dynamic_initials
相关问题