Django Image应该显示但不是

时间:2019-03-02 11:35:39

标签: python django django-models

我不明白为什么不显示图片,

HTML

 <div class="features-icons-item mx-auto mb-5 mb-lg-0 mb-lg-3">
     <div class="features-icons-icon d-flex">
         <img src="{{ x.pic.url }}">
     </div>

模型

class Item(models.Model):
title = models.CharField(max_length=200, default='item name...')
desc = models.TextField(default='Description....')
pic = models.ImageField(default='default.png', upload_to='item_pics')

观看次数

def index(request):
itemList = Item.objects.all()
return render(request, 'main/items.html', {'itemlist': itemList})

设置

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'

1 个答案:

答案 0 :(得分:0)

我认为您尚未在urlpatterns中添加媒体URL。

按如下所示更改项目中的url.py:

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)

有关更多说明,请参考django文档Django media files