使用图像字段在视图之间传递表单数据

时间:2017-08-01 10:58:39

标签: python django-forms django-views

我有一个包含图片字段的表单。在提交表单之前,我希望将用户重定向到预览页面,在那里他可以提交表单或返回上一个视图并进行一些更改。在接受预览之前,我不希望将表单保存在数据库中。 问题是我不知道如何在视图之间正确传递表单而不提交它。我尝试使用会话来做,但是当我传递整个表单时,有一个PickleError(可能是由于图像字段引起的)。然后,我尝试将form.cleaned_data传递给会话变量,但后来我不知道如何将其保存到数据库中。有什么想法吗?

temp = request.session['form_cleaned']
form = Form(instance=temp)

不起作用

查看1,部分内容

form = AdForm(request.POST, request.FILES)
if form.is_valid():
    form.save(commit=False)
    request.session['form_cleaned'] = form.cleaned_data

观看2:

def another_view(request):
    temp = request.session['form_cleaned']
    form = Form()
    # what should i do here?
    if form.is_valid():
        form.site = Site.objects.get_current()
        form.user = request.user
        ad = form.save()
        return render(request, 'finish_template.html')

0 个答案:

没有答案