【发布时间】:2016-05-16 07:30:54
【问题描述】:
我想检查表单集是否为空。如果为空,则不要在数据库中创建新记录。我怎样才能做到这一点?。尽管我在 form.py 中输入了 required=False,但请帮助解决这个问题。这是我的代码:
class ExtraValueFormRight(forms.ModelForm):
label = forms.CharField(required=False,
widget=forms.TextInput(attrs={'class': 'form-control', 'placeholder': 'Sub Title'}))
somevalue = forms.CharField(required=False,
widget=forms.TextInput(attrs={'class': 'form-control', 'placeholder': 'Some Value'}))
class Meta:
model = OrderHeader
fields = ('label', 'somevalue')
HTML:
{{ formset.management_form }}
{% for form in formset.forms %}
<div class='table-left'>
<table class='no_error'>
<div class="form-group">
<div class="col-lg-12">
{{ form.label }}
</div>
</div>
<div class="form-group">
<div class="col-lg-12">
{{ form.somevalue }}
</div>
</div>
</table>
</div>
{% endfor %}
【问题讨论】:
-
通常 django ModelFormSet 正是这样做的(如果用户没有填写表格,它们不会在 DB 中创建新对象)。你能展示你的森林创建代码吗? (你的视图代码,我猜)。请注意,在模板代码中,您在 formset 循环中为每个表单缺少一个 {{ form.id }}