Django复选框已选中/未选中规则
给定带有一些字段的Django表单:Django复选框已选中/未选中规则,django,django-forms,Django,Django Forms,给定带有一些字段的Django表单: class FruitsForm(forms.Form): fruit_choices = forms.TypedMultipleChoiceField("Fruits I Like", required=True, widget=forms.CheckboxSelectMultiple()) name = forms.CharField(required=True, max_length=20) 我有一束三种水果——苹果、橘子和梨
class FruitsForm(forms.Form):
fruit_choices = forms.TypedMultipleChoiceField("Fruits I Like", required=True,
widget=forms.CheckboxSelectMultiple())
name = forms.CharField(required=True, max_length=20)
我有一束三种水果——苹果、橘子和梨。然而,在加载表单时,我只希望预选择/预检查Apple
我知道要选中复选框,请使用attrs={'checked':'checked'}
字典,但如何在更细粒度的级别上执行呢
换句话说,我希望表格看起来:
Name: [Text Field]
Fruits I Like: Apple [X]
Fruits I Like: Orange [ ]
Fruits I Like: Pear [ ]
要实现这一点,您需要使用。通过指定
初始值
可以设置预选选项
例如,如果您发送的选项如下:choices=((1,“苹果”),(2,“橙色”),(3,“梨”))
,您将执行以下操作:
fruit\u choices=forms.TypedMultipleChoiceField(label=“Fruits I Like”,required=True,
widget=forms.CheckboxSelectMultiple(),choices=choices,initial=1)
如果您希望这是基于规则的,您也可以,例如,选择设置
initial=my_initial\u fruit
,其中my_initial\u fruit
是项目中其他地方定义的函数。只需添加最后一件事:如果initial
有多个值,则将其列为一个列表。例如initial=[1,2]