我创建了一个HTML表单,现在正在将它连接到Django。 (我知道我应该使用Django创建表单,但在这种情况下我没有)。在我的models.py中,我使用CharField作为文本框,CharField使用选择表单的选项,但是对于复选框,我使用什么模型字段?我是否必须为所有复选框选项创建另一个类,然后将其与manytomany关系链接?谢谢。
答案 0 :(得分:1)
可能是BooleanField
:
真/假字段。
此字段的默认表单窗口小部件是
CheckboxInput
。如果您需要接受
null
值,请改用NullBooleanField
。如果未定义
Field.default
,则BooleanField
的默认值为“无”。
model field reference page是找到这些类型答案的好地方。
我发现考虑我的模型而不是HTML表单是有帮助的;如果您根据模型应该选择的字段选择字段,那么表单通常会自行解决。
答案 1 :(得分:0)
好吧,我不知道您是否可以在模型中执行此操作,但您可以在表格this中使用它以获取更多信息
FAVORITE_COLORS_CHOICES = (
('blue', 'Blue'),
('green', 'Green'),
('black', 'Black'),
)
class SimpleForm(forms.Form):
favorite_colors = forms.MultipleChoiceField(
required=False,
widget=forms.CheckboxSelectMultiple,
choices=FAVORITE_COLORS_CHOICES,
)
答案 2 :(得分:0)
可以使用默认选项True或False实现BooleanField。 False给出未经检查的框,例如:
selected = models.BooleanField(default=False)