2
2
3
3
from collections .abc import Iterable
4
4
from typing import Any
5
- from typing import Callable
5
+ from typing import Iterable
6
6
7
7
from django .db .backends .base .base import BaseDatabaseWrapper
8
8
from django .db .models import CharField
@@ -24,11 +24,11 @@ class SoundsLike(Lookup):
24
24
25
25
def as_sql (
26
26
self ,
27
- qn : Callable [[ str ], str ] ,
27
+ compiler : SQLCompiler ,
28
28
connection : BaseDatabaseWrapper ,
29
29
) -> tuple [str , Iterable [Any ]]:
30
- lhs , lhs_params = self .process_lhs (qn , connection )
31
- rhs , rhs_params = self .process_rhs (qn , connection )
30
+ lhs , lhs_params = self .process_lhs (compiler , connection )
31
+ rhs , rhs_params = self .process_rhs (compiler , connection )
32
32
params = tuple (lhs_params ) + tuple (rhs_params )
33
33
return f"{ lhs } SOUNDS LIKE { rhs } " , params
34
34
@@ -66,10 +66,10 @@ def get_prep_lookup(self) -> Any:
66
66
return super ().get_prep_lookup ()
67
67
68
68
def as_sql (
69
- self , qn : Callable [[ str ], str ] , connection : BaseDatabaseWrapper
69
+ self , compiler : SQLCompiler , connection : BaseDatabaseWrapper
70
70
) -> tuple [str , Iterable [Any ]]:
71
- lhs , lhs_params = self .process_lhs (qn , connection )
72
- rhs , rhs_params = self .process_rhs (qn , connection )
71
+ lhs , lhs_params = self .process_lhs (compiler , connection )
72
+ rhs , rhs_params = self .process_rhs (compiler , connection )
73
73
# Put rhs (and params) on the left since that's the order FIND_IN_SET uses
74
74
params = tuple (rhs_params ) + tuple (lhs_params )
75
75
return f"FIND_IN_SET({ rhs } , { lhs } )" , params
@@ -86,9 +86,9 @@ class DynColHasKey(Lookup):
86
86
lookup_name = "has_key"
87
87
88
88
def as_sql (
89
- self , qn : Callable [[ str ], str ] , connection : BaseDatabaseWrapper
89
+ self , compiler : SQLCompiler , connection : BaseDatabaseWrapper
90
90
) -> tuple [str , Iterable [Any ]]:
91
- lhs , lhs_params = self .process_lhs (qn , connection )
92
- rhs , rhs_params = self .process_rhs (qn , connection )
91
+ lhs , lhs_params = self .process_lhs (compiler , connection )
92
+ rhs , rhs_params = self .process_rhs (compiler , connection )
93
93
params = tuple (lhs_params ) + tuple (rhs_params )
94
94
return f"COLUMN_EXISTS({ lhs } , { rhs } )" , params
0 commit comments