繁体   English   中英

如何使用一个提交按钮在Django中提交多个脆皮表格?

[英]How do i submit mutiple crispy forms in django using one submit button?

我尝试在一个模板中呈现两种单独的形式。 但是,当我尝试提交表单时,表单未提交。 有什么可行的方法吗? 当我不使用酥脆形式时,它工作正常

表格

class BasicInfoForm(ModelForm):
    class Meta:
        model = BasicInfo
        fields = '__all__'

    helper = FormHelper()
    helper.form_class = 'form-group'
    helper.layout = Layout(
                        Row(
                            Column('name', css_class='form-group col-sm-4 col-md-4'),
                            ),
                        Row(
                            Column('birthMonth',css_class='form-group col-sm-4 col-md-4'),
                            ),
                        Row(
                            Column('birthYear', css_class='form-group col-sm-4 col-md-4'),
                            ),
                        )

class IncomeDetailForm(ModelForm):
    class Meta:
        model = IncomeDetail
        fields = '__all__'
        exclude = ['user']

    helper = FormHelper()
    helper.form_class = 'form-group'
    helper.layout = Layout(
                        Row(
                            Column('gross', css_class='form-group col-sm-4 col-md-4'),
                            Column('monthlyExpense',css_class='form-group col-sm-4 col-md-4'),
                            Column('hasSavingsInvestment', css_class='form-group col-sm-4 col-md-4'),
                            ))

Views.py

def getIndexDetails(request):
        if request.method == 'POST':
        print("inside post method")
        basicinfoform = BasicInfoForm(request.POST)
        if basicinfoform.is_valid():
            basicinfoform.save()
            incomedetailform= IncomeDetailForm(request.POST)
        if incomedetailform.is_valid():
            incomedetailform.save()



<form action="." method="POST">
        {% csrf_token %}
        {{ crispy basicinfoform }}
        {% crispy incomedetailform %}
        <input type="submit" class="btn btn-info" value="Submit Button">                 
      </form>

如果您检查/在浏览器中检查你的HTML代码,你会看到两个form外嵌套在标签form标签(一个由您添加)。

您需要通过添加来避免这种情况

helper.form_tag = False

在每种形式下帮助对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM