Python 如何在Django的视图中在一个函数中处理多个表单

Python 如何在Django的视图中在一个函数中处理多个表单,python,html,django,view,Python,Html,Django,View,我必须在一个函数中处理两种形式: HTML页面 我的查询是在一个函数中处理多个表单,但如果您希望保留两个单独的表单,则这将不符合我的要求: if request.method == "POST" and "selectgenderform" in request.POST: *something* if request.method == "POST" and "selectionform" in request.POST: *something* 您可能还必须将提交输入名称

我必须在一个函数中处理两种形式:

HTML页面
我的查询是在一个函数中处理多个表单,但如果您希望保留两个单独的表单,则这将不符合我的要求:

if request.method == "POST" and "selectgenderform" in request.POST:
    *something*

if request.method == "POST" and "selectionform" in request.POST:
    *something*

您可能还必须将提交输入名称更改为“SelectGenPerform”和“selectionform”

您可以传递多个表单,并使用单个函数进行处理。然而,诀窍是将表单保存在模板中的一个表单标记下。(请容忍我在手机上打字)

views.py

def yourView(request):
    form1 = form1()
    form2 = form2()

    if request.method == "post":
        form1 = form1(request.POST)
        form2 = form2(request.POST)

        if form1.is_valid():
            #do something
        if form2.is_valid():
            #do something else 
   contest = { "form1": form1, "form2": form2 }
   return render(request, 'template.html', context=context)
template.html

    <form method="POST">
        {%csrf_token%}
        {{form1.as_p}}
        {{form2.as_p}}
    <button type="submit"> Submit </button>
    </form>

{%csrf_令牌%}
{{form1.as_p}}
{{form2.as_p}}
提交

谢谢您的回答,但首先我要用models.py?@Mahad_-Akbar制作表格的表格,这是不必要的。你也可以手动处理,但是这个使用表单的方法有点干净。请你手动解释一下,我尝试了很长时间,但没有效果
def yourView(request):
    form1 = form1()
    form2 = form2()

    if request.method == "post":
        form1 = form1(request.POST)
        form2 = form2(request.POST)

        if form1.is_valid():
            #do something
        if form2.is_valid():
            #do something else 
   contest = { "form1": form1, "form2": form2 }
   return render(request, 'template.html', context=context)
    <form method="POST">
        {%csrf_token%}
        {{form1.as_p}}
        {{form2.as_p}}
    <button type="submit"> Submit </button>
    </form>