簡體   English   中英

在CheckboxSelectMultiple中預先選擇一組選項

[英]Preselect a set of choices in CheckboxSelectMultiple

我正在嘗試創建一個包含動態選擇的MultipleChoiceField表單字段。 我想預選一個(動態)這些,其余的應該保持選中狀態。 有什么辦法可以做到這一點?

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

將導致所有選擇被檢查,但是我只需要檢查一些即可。

幫助將不勝感激

您必須將這些選擇作為字段的初始名稱。 例如:

    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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM