我试图在表单提交并保存到服务器之前向用户显示表单的摘要。
我在该表单上index.html
和该表单内有一个表单,我有这个输入按钮:
<input type="submit" value="Show summary" name="summary"/>
在summary.html
页面上,我在一个虚拟表单中有另一个输入按钮。我使用这个输入按钮来保存表单数据。
<input type="submit" value="Save to DB" name="save_db" />
以下是我的方法的代码片段views
:
def index(request):
form = JobForm(request.POST or None)
if request.method == 'POST':
if form.is_valid():
return summary(request)
return render_to_response('index.html', {'form': form}, context_instance=RequestContext(request))
def summary(request):
if request.method == 'POST':
save_to_db(request) # The problem here is that this is a new request. I lost the previous request with all the data
return render_to_response('thanks.html', context_instance=RequestContext(request))
xml = getxml(request) # form data is serialized
return render_to_response('summary.html', {'xml': xml}, context_instance=RequestContext(request))
从上面,我可以得到表单数据的摘要。但是,正如内联评论所暗示的那样,当我单击“保存到数据库”提交按钮时,先前包含所有表单数据的请求都将丢失。
我已经调查过了Sessions
,我找不到执行上述操作的正确方法。我还尝试将request
作为参数传递给摘要页面。但是,我认为这不是正确的做法。
我会很感激你的意见!
谢谢。