我有一个带有CheckboxSelectMutliple小部件的MultipleChoiceField:
weight_training_days = forms.MultipleChoiceField(
help_text=u'(Required) 3 days must be selected',
widget=forms.CheckboxSelectMultiple(attrs={
'inline': True,
}),
choices=(
(0, "Mon"),
(1, "Tue"),
(2, "Wed"),
(3, "Thu"),
(4, "Fri"),
(5, "Sat"),
(6, "Sun"),
),
)
我正在尝试将7个复选框中的3个动态设置为“ True”。理想情况下,我将从视图中执行此操作。
def change_challenge_settings_page(request):
c = Challenge.objects.get(user__exact = request.user,chal_status=1)
layout = 'horizontal'
form =UpdateChallengeSettingsForm(initial={'goal': c.level_goal })
return render(request, 'portal/portal_change_challenge_settings.html', {'form': form,'layout': layout,'scorecard_page': True,})
我知道如何使用ChoiceFields进行操作(在上面的示例中,“目标”是ChoiceField),但是在MultipleChoiceFields上却卡住了。我真的很感谢任何想法/反馈。
最佳答案
您可以将首字母设置为列表。在这种情况下,如果设置YourForm(inital={'weight_training_days': [0,1,2]})
,则默认为选择星期一,星期二和星期三。您也可以像这样forms.MultipleChoiceField(... inital=[0,1,2] ...)