【发布时间】:2019-10-16 05:53:19
【问题描述】:
我正在尝试显示来自数据库(SQLite、Django2.7)的图像。这些图像存储在根目录/媒体/图片中。
models.py
class News(models.Model):
news_id = models.AutoField(primary_key=True, editable=False)
news_img = models.FileField(upload_to="pictures/",validators=[FileExtensionValidator(allowed_extensions=['svg'])] )
urls.py
urlpatterns = [...]
urlpatterns += staticfiles_urlpatterns()
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
settings.py
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
我尝试通过以下方法在 var 中插入路径:
template.html
{% for news_f in news_f%}
<div>
<img src="{{ media }}{{news_f.news_img}}">
</div>
{% endblock %}
和
{% for news_f in news_f%}
<div>
<img src="{{news_f.news_img.url}}">
</div>
{% endblock %}
当我在浏览器中检查元素时,我得到了文件的正确路径。
<img src="/media/pictures/file.svg">
但它没有显示在 HTML 中:
Could not load the image
【问题讨论】:
-
我已经尝试过这个解决方案2010 solution,但没有任何反应
-
你能在另一个标签页中打开并查看图像吗?