algoliasearch-client-python
algoliasearch-client-python copied to clipboard
Make SearchClient more pythonic
- Algolia Client Version: 2.5.0
- Language Version: Python 3.8
Description
It's a small thing, but I'm so used to instantiating Python objects like this:
client = SearchClient(app_id, api_key)
that I didn't even think about using SearchClient.create(..)
. It took me some time to figure this out, because by chance, the SearchClient.__init__
method accepts two arguments and there's no validation.
Steps To Reproduce
For example:
from algoliasearch.search_client import SearchClient
client = SearchClient('APP_ID', 'API_KEY')
client.get_api_key('API_KEY')
throws a traceback because self._transporters
is now an instance of str
.
Expected Behavior
Ideally, the SearchClient
object should behave like other Python objects, with user-provided arguments to the __init__
method. If that won't work, can it be an empty __init__
method without user arguments, and you assign the transporter
and config
attributes in the create
method or elsewhere?
Hahaha, holy crap, thanks. That was my problem.