From 24ef1e73dce1e0679bed3cf1411f1562c438c566 Mon Sep 17 00:00:00 2001
From: Jonathan Weth <git@jonathanweth.de>
Date: Wed, 9 Sep 2020 17:29:19 +0200
Subject: [PATCH] Simplify queries

---
 aleksis/apps/alsijil/util/predicates.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/aleksis/apps/alsijil/util/predicates.py b/aleksis/apps/alsijil/util/predicates.py
index d591cbb8a..725581e6b 100644
--- a/aleksis/apps/alsijil/util/predicates.py
+++ b/aleksis/apps/alsijil/util/predicates.py
@@ -108,7 +108,7 @@ def has_person_group_object_perm(perm: str):
     @predicate(name)
     def fn(user: User, obj: Person) -> bool:
         groups = obj.member_of.all()
-        qs = UserObjectPermission.objects.filter(object_pk__in=groups.values_list("pk", flat=True), content_type=ct, user=user, permission__in=permissions)
+        qs = UserObjectPermission.objects.filter(object_pk__in=list(groups.values_list("pk", flat=True)), content_type=ct, user=user, permission__in=permissions)
         return qs.exists()
 
     return fn
@@ -142,7 +142,7 @@ def has_lesson_group_object_perm(perm: str):
     def fn(user: User, obj: LessonPeriod) -> bool:
         if hasattr(obj, "lesson"):
             groups = obj.lesson.groups.all()
-            qs = UserObjectPermission.objects.filter(object_pk__in=groups.values_list("pk", flat=True), content_type=ct, user=user, permission__in=permissions)
+            qs = UserObjectPermission.objects.filter(object_pk__in=list(groups.values_list("pk", flat=True)), content_type=ct, user=user, permission__in=permissions)
             return qs.exists()
         return False
 
@@ -163,7 +163,7 @@ def has_personal_note_group_perm(perm: str):
     def fn(user: User, obj: PersonalNote) -> bool:
         if hasattr(obj, "person"):
             groups = obj.person.member_of.all()
-            qs = UserObjectPermission.objects.filter(object_pk__in=groups.values_list("pk", flat=True), content_type=ct, user=user, permission__in=permissions)
+            qs = UserObjectPermission.objects.filter(object_pk__in=list(groups.values_list("pk", flat=True)), content_type=ct, user=user, permission__in=permissions)
             return qs.exists()
         return False
 
-- 
GitLab