Reputation: 27
Hi i want to ask about searchbar in django, i want to create something like if there is no results to show, show all or back to homepage. And my question is how to do it ?
Here is my code:
views:
def SearchPage(request):
kategorie = Kategoria.objects.all()
srh = request.GET['query']
kategorie_search = Kategoria.objects.filter(nazwa__icontains=srh)
dane = {'kategorie' : kategorie, 'kategorie_search' : kategorie_search, 'search' : srh}
return render(request, 'search_result.html', dane)
html:
{% for kat in kategorie_search %}
<div class="flex-container">
<div class="between">
<a href = "/episodes/{{ kat.slug }}"><img id="resize" src="{{ kat.miniaturka }}" class="imgh" title="{{ kat.nazwa }}"></a>
<figcaption class="caption"><a style= "color: #ffffff" href = "/episodes/{{ kat.slug }}"> {{kat.nazwa}} </a></figcaption>
</div>
</div>
{% endfor %}
Upvotes: 0
Views: 45
Reputation: 147
Something like this should work
def SearchPage(request):
kategorie = Kategoria.objects.all()
srh = request.GET['query']
kategorie_search = Kategoria.objects.filter(nazwa__icontains=srh)
if kategorie_search.exists():
dane = {'kategorie' : kategorie, 'kategorie_search' : kategorie_search, 'search' : srh}
return render(request, 'search_result.html', dane)
else:
return HttpResponseRedirect('/')
Upvotes: 1