【问题标题】:Django: Redirect after HttpResponseDjango:在 HttpResponse 之后重定向
【发布时间】:2016-04-22 05:00:53
【问题描述】:

我正在视图中生成报告下载,并在处理 POST 数据后开始下载。这意味着用户发送表单并开始下载:

views.py

def export(request):
    if request.method == 'POST' and 'export_treat' in request.POST: 
        form1 = TransExport(request.POST, instance= obj)
        if form1.is_valid():
            ... 
            ...
            response=HttpResponse(ds.xls,content_type="application/xls")
            response['Content-Disposition'] = 'attachment; filename="Report_Behandlungen.xls"'
            return response

我需要的是在下载(或重定向)后刷新页面。 我怎样才能做到这一点?

【问题讨论】:

标签: django redirect refresh httpresponse


【解决方案1】:

我会用 javascript 以简单的逻辑来做:

用户点击链接

/download_file_now/

然后来到/file_downloaded/,下载开始,3秒后,你只需通过js重定向页面

location.replace('/another_url/');

检测下载是否准备好并不容易

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-17
    • 1970-01-01
    • 1970-01-01
    • 2016-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多