Как вставить изображения из render( , , context) в Django?
Ребята! Новичок в Django, поэтому, возможно, это глупый вопрос. У меня есть .json файл, который хранит информацию об одежде магазина, включая "img". Задача состоит в том, чтобы вывести всю информацию о товарах в одном "for loop". Поэтому я написал такие строки
{% for product in products %}
<div class="col-lg-4 col-md-6 mb-4">
<div class="card h-100">
<a href="#">
<img class="card-img-top"
src="{% static '{{ product.img }}' %}" !!! problem is here
alt="">
</a>
<div class="card-body">
<h4 class="card-title">
<a href="#"> {{ product.name }} </a>
</h4>
<h5>{{ product.price }}</h5>
<p class="card-text"> {{ product.description }}</p>
</div>
<div class="card-footer text-center">
<button type="button" class="btn btn-outline-success">Отправить в корзину</button>
</div>
</div>
</div>
{% endfor %}
Все работает нормально, за исключением строки, касающейся изображения. В devtools я получаю следующий путь "/static/%7B%7B%20product.img%20%7D%7D". Но в файле .json он выглядит как "img": "vendor/img/products/Brown-sports-oversized-top-ASOS-DESIGN.png". Я совершенно запутался в этой ситуации и определенно в затруднительном положении. Буду признателен за любую помощь
работать с:
<img src="{{ product.img.url }}">
если изображение эффективно (product.img
не None
), и вы добавили медиа-урлы в urls.py
, то он определит URL, по которому нужно получить изображение продукта.
Обратите внимание, что в продакшене Django не обслуживает медиа файлы, поэтому в этом случае вам нужно будет настроить веб-сервер (Apache, Nginx и т.д.), чтобы он обслуживал медиа файлы для вас.