【发布时间】:2021-08-16 06:32:43
【问题描述】:
我花了几个小时寻找解决方案,我想我会为自己发帖。 Django 图像不会显示。
models.py:
class Item(models.Model):
...
image = models.ImageField(default='default.jpg', upload_to='item_pics')
urls.py
from django.urls import path
from . import views
from .views import ItemListView
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('', ItemListView.as_view(), name="site-home"),
]
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
html-文件
{% extends "ui/base.html" %}
{% load static %}
{% block content %}
<ul>
{% for item in items %}
<li>
<p><img src="{{ item.image.url }}"></p>
<br>
</li>
{% endfor %}
</ul>
{% endblock content %}
当我复制图片地址时,我得到 http://localhost:8000/media/default.jpg
【问题讨论】:
-
发布您的
settings.py的相关部分(即DEBUG、MEDIA_ROOT和MEDIA_URL)。您是否仔细检查了您的MEDIA_ROOT目录中是否有一个名为default.jpg的文件?
标签: django django-models django-views django-urls