首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PermissionError :/下载/

PermissionError :/下载/
EN

Stack Overflow用户
提问于 2019-03-27 06:14:08
回答 1查看 207关注 0票数 0

当我尝试下载该文件时,文件上写着PermissionError在/ download /

views.py

代码语言:javascript
复制
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 Http404

urls.py

代码语言:javascript
复制
re_path(r'^download/(?P<path>.*)$', views.download)

html模板中的

代码语言:javascript
复制
<a href="/download">Download</a>

我已经尝试了所有东西,比如将项目文件夹移动到另一个目录,或者以admin等方式运行它,但是它说

代码语言:javascript
复制
    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

如果能提供任何帮助,我将不胜感激)这个问题已经激怒我一个星期了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-27 06:23:38

路径是空的,因此它试图打开MEDIA_ROOT,这是一个目录。

假设您的目录结构如下:

代码语言:javascript
复制
-media root
  - 1.xlsx

然后,您将旅游html更新为

代码语言:javascript
复制
<a href="/download/1.xlsx">Download</a>

因此,路径变量变为1.xlsx。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55370877

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档