显示通过管理员上传的图像

时间:2018-06-25 20:57:44

标签: django

我正在将图像加载到管理面板中的模型中(不是表格形式)。

我知道它仅存储链接。当我尝试显示图像时,我没有显示。

我尝试以下操作:

{% for x in dataset %}
   <img src="{{ x.foto_disco.url }}" alt="Caca" style="width: 100%;">
   <p>{{ x.foto_disco.url }}</p>
{% endfor %}

我尝试获取图像,然后还显示链接以查看其指向的位置。文件上传正常。

它指向正确的myapp / media文件夹。但是仍然看不到模板中的图像。

在模型中,我有:

foto_disco = models.ImageField(upload_to='', blank=True, null=True)

在设置中,我有:

STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, "media")

我有urls.py:

urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

我不知道是什么问题。有任何线索吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

当尝试直接在localhost:8000 / media / IMAGE.jpg上测试图像时,我发现该图像已重定向到主页,而不是图像。

所以我意识到我的urls.py文件中有这行:

url('', RedirectView.as_view(url='/catalog/', permanent=True)),

我取消了这条线,现在它可以正常工作了。

感谢@blacklwhite的提示。