Изображение Django не отображается при поиске?
У меня есть приложение инвентаризации с товаром и его названием, фотографией.
Я запрашиваю записи в HTML странице и все работает нормально и изображения отображаются.
когда я пытаюсь искать, результат приходит без фотографии.
Вид:
def inventory_search_view(request):
query = request.GET.get('q')
product_search = Inventory.objects.filter(name__icontains = query).values()
print(product_search)
context = {'object_list': product_search}
return render(request, 'inventory_search.html', context = context)
HTML:
{%for object in object_list %}
<div class="product-image">
<img src="{{object.image}}" alt="{{object.name}}" />
<div class="info">
<h2> Description</h2>
<ul>
{{object.description}}
</ul>
</div>
</div>
</div>
{%endfor%}
форма поиска:
<form action="search/">
<input type="text" name="q">
<input type="submit" value="Search">
</form>
Заранее спасибо.
Почему вы используете .values()? Почему бы не передать кверисет в страницу? В странице вы также должны сделать object.image.url, как я полагаю.
def inventory_search_view(request):
query = request.GET.get('q')
product_search = Inventory.objects.filter(name__icontains=query)
print(product_search)
context = {'object_list': product_search}
return render(request, 'inventory_search.html', context=context)
А в вашем шаблоне:
{%for object in object_list %}
<div class="product-image">
<img src="{{object.image.url}}" alt="{{object.name}}" />
<div class="info">
<h2> Description</h2>
<ul>
<li>{{object.description}}</li>
</ul>
</div>
</div>
{% comment %} </div> This shouldn't be here, or you're missing some code in your question {% endcomment %}
{% endfor %}