[英]django required=True not working
我有一个非常简单的表格,我希望唯一的字段不能为空。 因此,在文档中,required = True是答案:
class AjouterGroupe(forms.Form):
nom = forms.CharField(required=True, label="", max_length=30, widget=forms.TextInput(attrs={'placeholder': 'Nom', 'class':'form-control input-perso'}))
这是我的一些看法:
Formset = formset_factory(data.form(table, 1), extra=nbajout)
if request.method == 'POST' and first:
formset = Formset(request.POST, request.FILES)
if formset.is_valid():
nbajout = 0
envoi = True
for form in formset:
print(form.is_valid())
print(form)
form.save()
form = nbAjout()
else:
formset = Formset()
在特定情况下,data.form(table,1)= AjouterGroupe。
但是主要的问题是当我使用空字段进行验证时,form.is_valid()为True:/
Variable Value
csrfmiddlewaretoken 'uw1fFj9toTU3o3Il3lFW0yvt4OS31XUn'
form-INITIAL_FORMS '0'
form-MAX_NUM_FORMS '1000'
form-TOTAL_FORMS '1'
form-MIN_NUM_FORMS '0'
form-0-nom ''
这是因为Formsets
确实允许空白值。 如果未输入任何内容,它将被视为不需要添加的表单。
单独尝试使用表单(不是表单集的一部分):在那里,您required=True
可以正常工作。 另外,如果您尝试使用具有两个字段(都设置为required=True
)的模型,则将看到仅填充一个字段会引发错误。
您应该能够使用formset_factory
参数,例如min_num=<number>, validate_min=True, extra=1
等,以强制进行验证。
另请参阅Django formset不验证 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.