【发布时间】:2021-03-09 19:50:17
【问题描述】:
静态图像正常显示。媒体文件夹中的文件未显示在html 中。我尝试以各种方式设置 media_url 但徒劳无功。我通过 django 管理面板上传了图像。产品名称显示正常。 img.url 显示 /media/p2.jpg
models.py
class Product(models.Model):
name = CharField(("Name"),max_length=256,blank=False)
title_img = models.ImageField(null=True, blank=True)
settings.py
PROJECT_ROOT = (os.path.dirname(os.path.abspath(__file__)))
STATIC_ROOT = os.path.join(PROJECT_ROOT, 'staticfiles')
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(os.path.dirname(PROJECT_ROOT), "media_root")
urls.py
urlpatterns = [
path('', ProductList.as_view() , name="product"),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
模板.html
{{p.name}}
<img src="{{p.title_img.url}}">
显示名称而不显示图像。在控制台中,我得到
"GET /media/p2.jpg HTTP/1.1" 404 2690
【问题讨论】:
标签: django image django-templates django-settings