Django表单集:使第一个字段为必填项?

10 浏览
0 Comments

Django表单集:使第一个字段为必填项?

这些表单集展示的行为完全与我想要的相反。

我的视图设置如下:

def post(request): # TODO: 处理车辆表单集
    VehicleFormSetFactory = formset_factory(VehicleForm, extra=1)
    if request.POST:
        vehicles_formset = VehicleFormSetFactory(request.POST)
    else:
        vehicles_formset = VehicleFormSetFactory()

我的模板如下:

    
        {{ vehicles_formset.management_form }}
        {% for form in vehicles_formset.forms %}
            

车辆 {{forloop.counter}}

{% include "form.html" %}
{% endfor %}

这样它最初只生成一个表单,就像我想要的那样。但是我希望这个表单是必填的!

当我用JavaScript动态添加空白表单和vehicles_formset.empty_form时,所有这些额外的表单都是必填的,而这不是我想要的。

根据文档:

表单集足够聪明,可以忽略未更改的额外表单。

这是第一个表单的行为(不是我想要的),但不是额外表单的行为(我想要的)。

有没有某个属性我可以改变,至少使一个表单是必填的?

0