views.py 752 B

1234567891011121314151617181920212223
  1. from django.db.models import Q
  2. from django.shortcuts import render
  3. from django.views.generic.base import TemplateView
  4. from games.models import Game
  5. def search(request):
  6. results = []
  7. query = ""
  8. if request.method == "GET":
  9. query = request.GET.get("q")
  10. if not query:
  11. return render(
  12. request, "search/search.html", {"query": query, "results": results}
  13. )
  14. results = Game.objects.filter(
  15. Q(name__icontains=query)
  16. | Q(game_system__name__icontains=query)
  17. | Q(publisher__name__icontains=query)
  18. | Q(genre__name__icontains=query)
  19. ).distinct()
  20. return render(request, "search/search.html", {"query": query, "results": results})