【发布时间】:2016-09-19 09:40:09
【问题描述】:
请告诉我为什么当我通过管理员保存图像时我看不到它?图像保存在数据库中,但如果只是在管理面板中按保存图像的链接,我看不到它。我得到 Page not found (404) 因为此路径中没有图像文件,但如果我在项目的文件夹中插入具有相同路径的文件,我可以看到它。因此,静态文件路径已正确定义。
我在模型中有图像字段:
photo = models.ImageField(upload_to = 'photo/', blank=True)`
设置:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(os.path.dirname(BASE_DIR), "static")
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static"),
)
MEDIA_ROOT = os.path.join(BASE_DIR, '..', 'static','media')
MEDIA_URL = '/static/media/'
并且似乎它应该将它保存在我的项目静态文件夹中,但它没有。
我的项目结构:
project/
-app/
-static/
--media/
---photo/
【问题讨论】:
-
你设置
MEDIA_ROOT路径了吗?用户上传文件通常保存在 /media/ 目录,而不是 /static/ -
是的,MEDIA_ROOT = os.path.join(BASE_DIR, '..', 'static','media')