form.is_valid()之后,我们得到form.cleaned_data。我如何在下一页上使用这些清除的数据。
例如,在处理完表单页面后,我们将客户重定向到下一页,在此我要使用cleaned_data的信息(例如姓名,联系方式,地址等)显示在下一页。
def ind(request):
if request.method == 'POST':
form = form_name(request.POST)
if form.is_valid():
print(form.cleaned_data)
return render(request, 'app_one/abc.html', {'data': form.cleaned_data})
# form.save(commit=True)
# return render(request,'app_one/index.html')
else:
form=form_name()
return render(request,'app_one/index.html',{'form':form)
答案 0 :(得分:1)
调用form.is_valid()
方法后,我们将获得经过验证的数据。一旦我们拥有经过验证的数据,便可以随意使用。
对于你的情况
第一页上填写的客户详细信息需要在第二页上显示为收据。
您可以创建名为Reciept
的模型,并将详细信息保存在模型中以备将来参考。如果要在其他页面视图中使用这些详细信息,则只需在context
中传递模型对象以呈现详细信息。
您可以使用如下所示的清理数据
def ind(request):
if request.method == 'POST':
form = form_name(request.POST)
if form.is_valid():
context = {}.update(form.cleaned_data)
return render(request, 'app_one/abc.html', context)
# form.save(commit=True)
# return render(request,'app_one/index.html')
else:
form=form_name()
return render(request,'app_one/index.html',{'form':form)
示例表格:
class MyForm(forms.Form):
reciept_num = forms.CharField()
以上述表格为例
您可以使用名称reciept_num
访问模板中的reciept_num
数据。