Django 下载的文件名
Posted
技术标签:
【中文标题】Django 下载的文件名【英文标题】:Django Downloaded File Name 【发布时间】:2013-12-10 10:44:22 【问题描述】:我使用一个简单的视图类通过它的 pk 来“强制下载”一个文件。下载的文件名称是 pk。我希望它是原始文件名,就像它在服务器上一样。 我该怎么做?
*我是 django 新手
这里是视图的代码
class GetFileContent(View):
def get(self,request, userName, pk):
user = User.objects.filter(username = userName)
filtered = File.objects.filter(pk = pk, published=True, file_owner = user)
data = filtered[0].content
return HttpResponse(data, content_type='application/force-download')
pass
【问题讨论】:
【参考方案1】:您需要在响应中设置文件名:
response = HttpResponse(data, content_type='application/force-download')
response['Content-Disposition'] = 'attachment; filename=""'.format(filename)
return response
您需要找到一种方法来确定所需的文件名(例如,将其存储在数据库中以供查找)。
【讨论】:
以上是关于Django 下载的文件名的主要内容,如果未能解决你的问题,请参考以下文章