2
2
3
3
from httpx import AsyncClient , Response
4
4
5
- from postgrest_py .utils import sanitize_param
5
+ from postgrest_py .utils import sanitize_param , sanitize_pattern_param
6
6
7
7
8
8
class RequestBuilder :
@@ -76,12 +76,22 @@ def is_(self, column: str, value: str):
76
76
return self .filter (column , "is" , sanitize_param (value ))
77
77
78
78
def like (self , column : str , pattern : str ):
79
- pattern = pattern .replace ("%" , "*" )
80
- return self .filter (column , "like" , pattern )
79
+ return self .filter (column , "like" , sanitize_pattern_param (pattern ))
81
80
82
81
def ilike (self , column : str , pattern : str ):
83
- pattern = pattern .replace ("%" , "*" )
84
- return self .filter (column , "ilike" , pattern )
82
+ return self .filter (column , "ilike" , sanitize_pattern_param (pattern ))
83
+
84
+ def fts (self , column : str , query : str ):
85
+ return self .filter (column , "fts" , sanitize_param (query ))
86
+
87
+ def plfts (self , column : str , query : str ):
88
+ return self .filter (column , "plfts" , sanitize_param (query ))
89
+
90
+ def phfts (self , column : str , query : str ):
91
+ return self .filter (column , "phfts" , sanitize_param (query ))
92
+
93
+ def wfts (self , column : str , query : str ):
94
+ return self .filter (column , "wfts" , sanitize_param (query ))
85
95
86
96
def in_ (self , column : str , values : Iterable [str ]):
87
97
values = map (sanitize_param , values )
@@ -103,18 +113,6 @@ def ov(self, column: str, values: Iterable[str]):
103
113
values = "," .join (values )
104
114
return self .filter (column , "ov" , f"{{values}}" )
105
115
106
- def fts (self , column : str , query : str ):
107
- return self .filter (column , "fts" , sanitize_param (query ))
108
-
109
- def plfts (self , column : str , query : str ):
110
- return self .filter (column , "plfts" , sanitize_param (query ))
111
-
112
- def phfts (self , column : str , query : str ):
113
- return self .filter (column , "phfts" , sanitize_param (query ))
114
-
115
- def wfts (self , column : str , query : str ):
116
- return self .filter (column , "wfts" , sanitize_param (query ))
117
-
118
116
def sl (self , column : str , range : Tuple [int , int ]):
119
117
return self .filter (column , "sl" , f"({ range [0 ]} ,{ range [1 ]} )" )
120
118
0 commit comments