我正在尝试编写一个脚本,用于在用户的计算机上下载上传的文件。问题在于下载根本不起作用(它要么向我下载一个空文件,要么给我一些错误)。
最后一个错误是:强制转换为Unicode:需要字符串或缓冲区,但发现了FieldFile。
如何正确声明文件名,以便每次下载时知道要下载哪个文件: 实际上,文件名是如上所述的“course”。 谢谢!
最后一个错误是:强制转换为Unicode:需要字符串或缓冲区,但发现了FieldFile。
def download_course(request, id):
course = Courses.objects.get(pk = id).course
path_to_file = 'root/cFolder'
filename = course # Select your file here.
wrapper = FileWrapper(file(course))
content_type = mimetypes.guess_type(filename)[0]
response = HttpResponse(wrapper, content_type = content_type)
response['Content-Length'] = os.path.getsize(filename)
response['Content-Disposition'] = 'attachment; filename=%s/' % smart_str(course)
return response
如何正确声明文件名,以便每次下载时知道要下载哪个文件: 实际上,文件名是如上所述的“course”。 谢谢!