Skip to content

Commit 139c85b

Browse files
committed
fix(python): do not share parameters for browse methods
1 parent d04cbce commit 139c85b

File tree

2 files changed

+24
-8
lines changed

2 files changed

+24
-8
lines changed

playground/python/app/search.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,17 @@ def main():
2020
print("client initialized", client)
2121

2222
try:
23-
resp = client.delete_by(
24-
index_name="foo", delete_by_params={"filters": "brand:name"}
25-
)
26-
print(resp.to_json())
23+
resp = client.search_synonyms("test_Website_django_ci-1732613837.75547")
24+
print(resp)
25+
client.browse_synonyms("test_Website_django_ci-1732613837.75547", lambda _resp: print(_resp))
2726
finally:
2827
client.close()
2928

3029
print("client closed")
3130

3231

3332
main()
33+
main()
34+
main()
35+
main()
36+
main()

templates/python/search_helpers.mustache

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -122,13 +122,17 @@
122122
self,
123123
index_name: str,
124124
aggregator: Callable[[BrowseResponse], None],
125-
browse_params: BrowseParamsObject = BrowseParamsObject(),
125+
browse_params: Optional[BrowseParamsObject] = None,
126126
request_options: Optional[Union[dict, RequestOptions]] = None,
127127
) -> BrowseResponse:
128128
"""
129129
Helper: Iterate on the `browse` method of the client to allow aggregating objects of an index.
130130
"""
131-
browse_params.hits_per_page = browse_params.hits_per_page or 1000
131+
if browse_params is None:
132+
browse_params = BrowseParamsObject(hits_per_page=1000)
133+
134+
if browse_params.hits_per_page is None:
135+
browse_params.hits_per_page = 1000
132136

133137
{{^isSyncClient}}async {{/isSyncClient}}def _func(_prev: Optional[BrowseResponse]) -> BrowseResponse:
134138
if _prev is not None and _prev.cursor is not None:
@@ -149,14 +153,18 @@
149153
self,
150154
index_name: str,
151155
aggregator: Callable[[SearchRulesResponse], None],
152-
search_rules_params: SearchRulesParams = SearchRulesParams(hits_per_page=1000),
156+
search_rules_params: Optional[SearchRulesParams] = None,
153157
request_options: Optional[Union[dict, RequestOptions]] = None,
154158
) -> SearchRulesResponse:
155159
"""
156160
Helper: Iterate on the `search_rules` method of the client to allow aggregating rules of an index.
157161
"""
162+
if search_rules_params is None:
163+
search_rules_params = SearchRulesParams(hits_per_page=1000)
164+
158165
if search_rules_params.hits_per_page is None:
159166
search_rules_params.hits_per_page = 1000
167+
160168
hits_per_page = search_rules_params.hits_per_page
161169

162170
{{^isSyncClient}}async {{/isSyncClient}}def _func(_prev: Optional[SearchRulesResponse]) -> SearchRulesResponse:
@@ -177,12 +185,17 @@
177185
self,
178186
index_name: str,
179187
aggregator: Callable[[SearchSynonymsResponse], None],
180-
search_synonyms_params: SearchSynonymsParams = SearchSynonymsParams(hits_per_page=1000),
188+
search_synonyms_params: Optional[SearchSynonymsParams] = None,
181189
request_options: Optional[Union[dict, RequestOptions]] = None,
182190
) -> SearchSynonymsResponse:
183191
"""
184192
Helper: Iterate on the `search_synonyms` method of the client to allow aggregating synonyms of an index.
185193
"""
194+
if search_synonyms_params is None:
195+
search_synonyms_params = SearchSynonymsParams(
196+
hits_per_page=1000,
197+
page=0
198+
)
186199
hits_per_page = 1000
187200
page = search_synonyms_params.page or 0
188201
search_synonyms_params.hits_per_page = hits_per_page

0 commit comments

Comments
 (0)