File tree Expand file tree Collapse file tree 2 files changed +8
-7
lines changed Expand file tree Collapse file tree 2 files changed +8
-7
lines changed Original file line number Diff line number Diff line change 5
5
6
6
import typing as t
7
7
8
+ from django .db .models import Q # isort: skip
8
9
from django .db .models .query import QuerySet # isort: skip
9
10
from django_filters import ( # type: ignore[import-untyped] # isort: skip
10
11
rest_framework as filters ,
@@ -40,8 +41,9 @@ def name_method(
40
41
# TODO: use PostgreSQL specific lookup
41
42
# https://docs.djangoproject.com/en/5.0/ref/contrib/postgres/lookups/#std-fieldlookup-trigram_similar
42
43
return queryset .filter (
43
- first_name__icontains = first_name
44
- ) | queryset .filter (last_name__icontains = last_name )
44
+ Q (first_name__icontains = first_name )
45
+ | Q (last_name__icontains = last_name )
46
+ )
45
47
46
48
def only_teachers__method (
47
49
self : FilterSet , queryset : QuerySet [User ], _ : str , value : bool
Original file line number Diff line number Diff line change 9
9
10
10
from common .models import Teacher , TeacherModelManager
11
11
from django .db import models
12
+ from django .db .models import Q
12
13
13
14
from .klass import Class
14
15
from .school import School
@@ -100,18 +101,16 @@ def school_users(self):
100
101
# pylint: disable-next=import-outside-toplevel
101
102
from .user import User
102
103
103
- return (
104
- # student-users
105
- User .objects .filter (
104
+ return User .objects .filter (
105
+ Q ( # student-users
106
106
new_teacher__isnull = True ,
107
107
** (
108
108
{"new_student__class_field__teacher__school" : self .school }
109
109
if self .is_admin
110
110
else {"new_student__class_field__teacher" : self }
111
111
)
112
112
)
113
- # school-teacher-users
114
- | User .objects .filter (
113
+ | Q ( # school-teacher-users
115
114
new_student__isnull = True ,
116
115
new_teacher__school = self .school ,
117
116
)
You can’t perform that action at this time.
0 commit comments