如何在Django 1.10中显示图像

时间:2016-08-31 16:29:10

标签: python django

我不喜欢django,我使用Django 1.10,现在我的图像显示有问题。我在这个版本中看到一些东西已经改变但我没有得到它。这就是我现在所拥有的:

settings.py:

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

STATIC_DIR = os.path.join(BASE_DIR, 'static')

TEMPLATE_DIR = os.path.join(BASE_DIR, '/templates')

STATICFILES_DIRS = [STATIC_DIR, ]

STATIC_URL = '/static/'

MEDIA_ROOT = 'C:/Users/john/myprojects/goal/website/goal/media/'

MEDIA_URL = '/media/'

也许这里有些不寻常,我可以删除它吗?

模板:

{% block content%}
    {{ car.name }}
    {{ car.photo.url }}
{% endblock %}

这是我有我的图片的文件夹:

  

C:/用户/约翰/ MyProjects下/目标/网站/目标/媒体/图像

而我在网站上看到的不是图像:

  

/media/images/mynewcar.jpg

我必须改变什么?

我粘贴到urls.py:

  

media_dir = os.path.join(os.path.dirname( file ),'media')

和urlpatterns

  

URL(R '^媒体/(.*)$', 'django.views.static.serve',{ 'DOCUMENT_ROOT':   media_dir}),

1 个答案:

答案 0 :(得分:4)

您必须放置<img>标记

{% block content%}
    {{ car.name }}
    <img src="{{ car.photo.url }}">
{% endblock %}

<强>更新

from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    # ... the rest of your URLconf goes here ...
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)