Django:需要勾选复选框以提交表单
Posted
技术标签:
【中文标题】Django:需要勾选复选框以提交表单【英文标题】:Django: Require Checkbox to be ticked to Submit Form 【发布时间】:2013-06-03 23:57:36 【问题描述】:我正在 Django 中创建一个表单(使用 ModelForm)。 有很多复选框,我想这样做,以便必须选择其中一个才能提交表单。我不是指任何一个复选框,而是一个 特定 框。我在 Django 文档中找不到任何内容。任何帮助,将不胜感激。
【问题讨论】:
显示您的表格。required=True
也没有工作?
@karthikr required
选项应该放在哪里?
在表单字段定义中。 docs.djangoproject.com/en/dev/ref/forms/fields/#required
是的,当然,这就是我想要的。感谢您的帮助。
【参考方案1】:
类似
from django import forms
class MyForm(forms.Form):
check = forms.BooleanField(required = True)
# your other form fields
对于 BooleanField,required = True
将检查该框是否被选中。这是因为只有勾选了才会提交数据。
来源:https://docs.djangoproject.com/en/dev/ref/forms/fields/#django.forms.BooleanField
如果字段的 required=True,则验证该值为 True(例如选中复选框)。
【讨论】:
这将如何在模型中完成,因为我的 forms.py 只是要从模型中包含的字段列表,但我的模型指定是否允许字段为空白等。 在模型中放置一个需要为真的布尔值似乎没用,但我想你必须重写该字段的保存方法以检查它是否设置为 True 并引发 ValidationError 否则。以上是关于Django:需要勾选复选框以提交表单的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 jQuery 重新填充表单提交时隐藏的 CSV 字段