Браузер не может найти картинку, переданную в тег

136
04 мая 2021, 22:40

передаю картинку из БД в шаблон, но браузер её почему-то не находит. Объясните пожалуйста почему и как это решить.

cat_of_plants.html:

    <div class="container">
      <div class="cotainer-content">
        {% for pl in plant %}
          <div class="latin_name">{{ pl.latin_name }}</div>
          <div class="image">
            <img src="{{ pl.image }}" alt="картинка не работает">
          </div>
          <div class="price">{{ pl.price }}</div>
          <div class="name">{{ pl.name }}</div>
        {% endfor %}
      </div>
    </div>

views.py:

from django.shortcuts import render
from .forms import PlantsForm
from .models import plants
# Create your views here.
def cat_of_plants(request):
    Plants = plants.objects.all()
    return render(request,'content/cat_of_plants.html',context = {'plant': Plants})

models.py:

from django.db import models
from django import forms
class plants(models.Model):
    latin_name = models.CharField(max_length=1000, unique = True)
    image = models.ImageField(upload_to='images', db_index = True)
    price = models.IntegerField(db_index = True)
    name = models.CharField(max_length=1000, unique = True)
    def __str__(self):
        return self.name
Answer 1

Вы забыли прописать свойство url. Документация

<img src="{{ pl.image.url }}" alt="картинка не работает">

Чтобы dev-сервер раздавал ваши медиа:

from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
    # Ваши паттерны
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Еще раз прочтите документацию, иначе никак.

READ ALSO
Почему съезжает блок меню?

Почему съезжает блок меню?

Меню состоит из двух блоков header__left и header__right, они должны находиться в одной линии, Но блок header_right съезжает внизКак можно это исправить?

235
Как связать checkbox и select

Как связать checkbox и select

Есть элемент select, рядом с ним стоит чекбокс (<input type='checkbox'>) select по умолчанию находится в состоянии disabled, мне надо что бы при нажатии на чекбокс...

184
Внедрить share-кнопки социальных сетей?

Внедрить share-кнопки социальных сетей?

Нужно внедрить возможность через сайт публикацию в соц сетяхПопробовал, к примеру, в вк следующее:

145
Асинхронная запись в SerialPort

Асинхронная запись в SerialPort

Всем приветЕсть небольшое приложение на WinForms, которое принимает значения и отправляет их по SerialPort

123