【问题标题】:Errno 13 Permission denied Django Upload FileErrno 13 权限被拒绝 Django 上传文件
【发布时间】:2013-09-11 09:54:58
【问题描述】:

我查看了所有其他解决方案,但似乎没有什么对我有用。我的设置中有这个。

MEDIA_ROOT = '/Desktop/myapp/media/'
MEDIA_URL = 'http://127.0.0.1:8000/media/'

这在我的 admin.py 中

    image = models.FileField(upload_to='images/')

我现在在 localhost 服务器上运行它。当我尝试在管理员中上传图像并保存时,出现错误:

[Errno 13] Permission denied: '/Desktop'

我尝试使用chmodchown 更改模式,但仍然遇到相同的错误。我什至检查了 lsof -i 并且 Python 似乎确实可以访问这个文件夹。我做错了什么?

【问题讨论】:

    标签: django django-admin


    【解决方案1】:

    我只是在绝对路径上遇到了同样的问题,但我意识到了别的东西。我正在加入这样的道路:

    os.path.join(BASE_DIR, "/media")
    

    但是,正如documentation所述:

    如果组件是绝对路径,则抛出之前的所有组件 离开并从绝对路径组件继续加入。

    所以去掉根斜线就解决了问题:

    os.path.join(BASE_DIR, "media")
    

    干杯。

    【讨论】:

      【解决方案2】:

      好吧,我似乎已经回答了我自己的问题。事实证明,这是一个非常小的问题。我所做的只是将媒体根目录更改为完整路径,瞧。

      MEDIA_ROOT = 'Users/username/Desktop/myapp/media/'
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-10-18
        • 1970-01-01
        • 2021-01-17
        • 2018-02-05
        • 1970-01-01
        • 1970-01-01
        • 2019-05-17
        • 1970-01-01
        相关资源
        最近更新 更多