通过 django 管理问题将图像保存在 static/media 文件夹中
Saving image in static/media folder via django admin issue
请问为什么我用admin保存的图片看不到?图像保存在数据库中,但如果在管理面板中按 link 保存图像,我看不到它。我得到 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 = os.path.join(os.path.dirname(BASE_DIR), 'static','media')
确保以下事项 - 在您的项目所在的文件夹中存在一个名为 'static' 的文件夹。它应该包含一个名为 'media' 的文件夹。
更新:我认为您的文件夹结构有误。以下应该是根据您的设置的结构 -
-static // MEDIA_ROOT and STATIC_ROOT setting
-media // MEDIA_ROOT setting
-project(src)
-app1
-models.py
-views.py
-...
-static // STATICFILES_DIRS setting
请问为什么我用admin保存的图片看不到?图像保存在数据库中,但如果在管理面板中按 link 保存图像,我看不到它。我得到 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 = os.path.join(os.path.dirname(BASE_DIR), 'static','media')
确保以下事项 - 在您的项目所在的文件夹中存在一个名为 'static' 的文件夹。它应该包含一个名为 'media' 的文件夹。
更新:我认为您的文件夹结构有误。以下应该是根据您的设置的结构 -
-static // MEDIA_ROOT and STATIC_ROOT setting
-media // MEDIA_ROOT setting
-project(src)
-app1
-models.py
-views.py
-...
-static // STATICFILES_DIRS setting