From dcee37f295bf647155ae3d408a393d6ab3af93f0 Mon Sep 17 00:00:00 2001 From: ben8 Date: Sun, 1 Jun 2025 16:16:25 +0200 Subject: [PATCH] =?UTF-8?q?Optimierte=20Suchvorschl=C3=A4ge?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- django/library/views.py | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/django/library/views.py b/django/library/views.py index 5f7ad37..26757f7 100644 --- a/django/library/views.py +++ b/django/library/views.py @@ -21,11 +21,21 @@ def quiz_names_json(request): form = QuizFilterForm(request.GET) if form.is_valid(): search = form.cleaned_data.get('search') - names = list( - QivipQuiz.objects.all().annotate(max_amout_questions=Count('questions')).filter(max_amout_questions__gte=1, status='öffentlich', name__icontains=search) - .values_list('name', flat=True) - .distinct() -) + + + names = QivipQuiz.objects.all().annotate(max_amout_questions=Count('questions')).filter(max_amout_questions__gte=1, status='öffentlich', name__icontains=search) + + + if request.user.is_authenticated: + names = names | QivipQuiz.objects.filter( + user_id=request.user.id, + status='privat', + name__icontains=search + ) + + names=list(names.values_list('name', flat=True).distinct()) + + return JsonResponse(names, safe=False) def overview_quiz(request):