Django 4.0.4媒体图片无法在模板中显示问题求助
解决Django媒体文件模板加载失败的问题
嘿,我一眼就揪出问题所在了!你模板里的img标签犯了个超容易疏忽的拼写错误——把src写成scr了!浏览器只会识别src属性来加载图片资源,所以哪怕媒体文件的URL本身是对的、直接访问能打开,模板里的图片也会因为这个拼写错误加载失败。
修正后的模板代码
把img标签里的scr改成src就搞定了:
{% load static %} <h1>{{ object.title }}</h1> <p>{{ object.description }}</p> <p>link: {{ object.link }}</p> <p>Category: {{ object.category }}</p> <p>Date: {{ object.date_time|date }} at {{ object.date_time|time }}</p> {% for photo in photo_list %} {{photo.photo.url}} <img src="{{ photo.photo.url }}" width="250" height="250"> {% endfor %}
额外确认点(避免后续踩坑)
- 你的
settings.py里的MEDIA配置完全正确,MEDIA_ROOT和MEDIA_URL的设置没问题 urls.py里已经正确添加了媒体文件的URL映射,这也是直接访问URL能显示图片的原因- 模型里的
ImageField字段配置正常,上传的文件确实存在于MEDIA_ROOT指定的目录中
修正这个拼写错误后,模板里的图片应该就能正常加载啦!
内容的提问来源于stack exchange,提问作者Mhamed Bendenia
相关产品推荐
相关产品推荐

