当我尝试下载该文件时,文件上写着PermissionError在/ download /
views.py
def download(request, path):
file_path = os.path.join(settings.MEDIA_ROOT, path)
if os.path.exists(file_path):
with open(file_path, 'rb') as f:
response = HttpResponse(f.read(), content_type="application/vnd.ms-excel")
response['Content-Disposition'] = 'inline; filename=' + os.path.basename(file_path)
return response
raise Http404urls.py
re_path(r'^download/(?P<path>.*)$', views.download)html模板中的
<a href="/download">Download</a>我已经尝试了所有东西,比如将项目文件夹移动到另一个目录,或者以admin等方式运行它,但是它说
Internal Server Error: /download/
Traceback (most recent call last):
File "C:\Users\Zako5\.virtualenvs\jurnal-6LxuXEYu\lib\site-packages\django\core\handlers\exception.py", line 34, in inner
response = get_response(request)
File "C:\Users\Zako5\.virtualenvs\jurnal-6LxuXEYu\lib\site-packages\django\core\handlers\base.py", line 126, in _get_response
response = self.process_exception_by_middleware(e, request)
File "C:\Users\Zako5\.virtualenvs\jurnal-6LxuXEYu\lib\site-packages\django\core\handlers\base.py", line 124, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Users\Zako5\PycharmProjects\jurnal\jurnal_app\views.py", line 40, in download
with open(file_path, 'rb') as fh:
PermissionError: [Errno 13] Permission denied: 'C:\\Users\\Zako5\\PycharmProjects\\jurnal\\media/'
[27/Mar/2019 10:56:09] "GET /download/ HTTP/1.1" 500 66483如果能提供任何帮助,我将不胜感激)这个问题已经激怒我一个星期了。
发布于 2019-03-27 06:23:38
路径是空的,因此它试图打开MEDIA_ROOT,这是一个目录。
假设您的目录结构如下:
-media root
- 1.xlsx然后,您将旅游html更新为
<a href="/download/1.xlsx">Download</a>因此,路径变量变为1.xlsx。
https://stackoverflow.com/questions/55370877
复制相似问题