Python 在django中提供可下载文件会引发服务器错误

Python 在django中提供可下载文件会引发服务器错误,python,django,server,Python,Django,Server,我是django的新手。我正在尝试使用django FileWrapper提供可下载的文件。但是,我不断收到内部服务器错误消息 编辑:My settings.py DEBUG=True html中的链接: abcd.com/downloadResult/fileName/ 我的URL.py url(r'^downloadResult/(\w{0,50})/$',"myApp.views.showResult",name="Result"), 我的观点 from django.core.se

我是django的新手。我正在尝试使用django FileWrapper提供可下载的文件。但是,我不断收到内部服务器错误消息

编辑:My settings.py

DEBUG=True
html中的链接:

abcd.com/downloadResult/fileName/
我的URL.py

url(r'^downloadResult/(\w{0,50})/$',"myApp.views.showResult",name="Result"),
我的观点

from django.core.servers.basehttp import FileWrapper
def showResult(request,fileName):
    file=open("/path/to/file/"+fileName+".txt","r")
    response=HttpResponse(FileWrapper(file),mimetype='application/force-download')
    response['Content-Disposition']='attachment; filename=%s' % smart_str(fileName+".txt")
    file.close()
    return response
有人能告诉我一些讨论或者指出我遗漏了什么吗


谢谢

我发现了代码的问题。我在归还任何东西之前关闭了文件。在注释掉views.py中最后一行的第二行之后,它可以正常工作。我在apache日志文件中找到了错误消息,但即使DEBUG设置为True,也没有在浏览器中得到任何错误消息。
现在,此解决方案的问题是,有些文件已打开,但从未关闭。

如果您不发布所收到的实际错误,没有人可以帮助您。服务器错误!这就是我得到的@DanielRosemanNo不是。如果你正在开发,你必须有DEBUG=True,因此你有一个很好的回溯,包含很多有用的信息。即使DEBUG=True,当我的python代码中出现错误时,我也会得到有用的错误消息,但使用上面的脚本,我只会得到服务器错误@DanielRoseman“服务器错误”可能是由ajax错误回调打印的消息。看看python控制台中的最后几行