Django下载文件
我正在训练用Django下载一个文件。我找到了很多方法,但没有人为我工作。有人能帮我吗?这是我在views.py中的实际代码:Django下载文件,django,django-views,Django,Django Views,我正在训练用Django下载一个文件。我找到了很多方法,但没有人为我工作。有人能帮我吗?这是我在views.py中的实际代码: if form.is_valid(): format = form.cleaned_data['format'] x.saveCalculatedRoute( tempRoute+request.user.username, format ) path_to_file = '/var/www/tottrack/media
if form.is_valid():
format = form.cleaned_data['format']
x.saveCalculatedRoute( tempRoute+request.user.username, format )
path_to_file = '/var/www/tottrack/media/zones/temp/marc.osm'
response = HttpResponse(mimetype='application/force-download')
response['Content-Disposition'] = 'attachment; filename=prova.osm'
response['X-Sendfile'] = smart_str(path_to_file)
return response
它下载了一个空文件,我怎么填呢??坦克 我个人会将此文件放入媒体目录,让您的服务器进行文件流传输,而不是django,除非您确实需要它 在django中提供静态文件的效率非常低,因此您最好通过专门为提供数据而优化的web服务器来实现这一点 来自django文档 提供文件 除了这些配置步骤之外,您还需要 提供静态文件 在开发过程中,如果您使用 runserver和DEBUG设置为True(请参阅 django.contrib.staticfiles.views.service()) 这种方法效率极低,可能不安全,因此不适合生产
有关在生产环境中为静态文件提供服务的正确策略,请参阅部署静态文件。是否启用了
modxsendfile
?当您将文件传递给HttpResponse
方法时会发生什么<代码>包装器=文件包装器(打开(路径,“r”);response=HttpResponse(wrapper,content\u type=content\u type)现在我正在开发中,我尝试了views.service(请求,路径到文件),但它可以找到文件:“/var/www/totrack/media/zones/temp/marc.osm”找不到