【发布时间】:2014-12-20 09:58:04
【问题描述】:
我在同一个模板的两个不同选项卡中有两个表单。表单的模型通过外键连接。
当我尝试独立保存每个表单时,每个表单都有一个提交按钮,但不幸的是,这两个表单正在尝试再次保存数据,即使我只按下一个提交按钮。
Views.py
def input(request):
my_demographics = DemographicForm(request.POST or None)
my_diagnosis = DiagnosisForm(request.POST or None)
context = RequestContext(request)
if request.method == 'POST':
submitted = request.POST.get('form_id', '')
if submitted == 'demographics':
# Get the Form1 instance
my_demographics = DemographicForm(request.POST)
if my_demographics.is_valid():
my_demographics_object= my_demographics.save()
my_diagnosis=DiagnosisForm({'patient': my_demographics_object.patient_id})
elif submitted == 'diagnosis':
# Get the Form2 instance
my_diagnosis = DiagnosisForm(request.POST)
if my_diagnosis.is_valid():
my_diagnosis.save()
else:
raise ValueError('No form specified !')
return render_to_response('input.html', {'frm':my_demographics, 'frm_d': my_diagnosis}, context)
input.html
<div class="tab-content">
<!-- Tab panes -->
<form class="tab-pane fade in active" id="demographics" method="post" >
<input type="hidden" name="form_id" value="demographics">
{%crispy frm%}
</form>
<form class="tab-pane fade" id="diagnosis" method="post">
<input type="hidden" name="form_id" value="diagnosis">
{%crispy frm_d%}
</form>
</div>
【问题讨论】:
-
不是真的,OP想用相同的表单提交它们,而链接的问题是关于在同一页面中处理多个提交!
-
我认为您误读了这个问题 - “......尝试独立保存每个表单,每个表单都有一个提交按钮......”
标签: html django django-forms django-views