Files
vergabe-teilnahme/vergabe_teilnahme/apps/core/views.py
2026-05-08 14:26:48 +02:00

30 lines
899 B
Python

from django.http import HttpResponse
from django.shortcuts import render
from django.views.decorators.http import require_GET
def custom_404(request, exception=None):
return render(request, 'errors/404.html', status=404)
def custom_500(request):
return render(request, 'errors/500.html', status=500)
@require_GET
def suche(request):
q = request.GET.get('q', '').strip()
if not q or len(q) < 2:
return HttpResponse('')
from vergabe_teilnahme.apps.ausschreibungen.models import Ausschreibung
ausschreibungen = Ausschreibung.objects.filter(titel__icontains=q)[:5]
if not ausschreibungen:
return HttpResponse('')
items = ''.join(
f'<a href="/ausschreibungen/{a.pk}/" '
f'class="block px-4 py-2 text-sm text-slate-700 hover:bg-slate-50">'
f'{a.titel}</a>'
for a in ausschreibungen
)
return HttpResponse(items)