diff --git a/apiserver/search.py b/apiserver/search.py index 7942a8d..622cd97 100644 --- a/apiserver/search.py +++ b/apiserver/search.py @@ -29,24 +29,20 @@ def create_index(): json = dict(uid='qotnews', primaryKey='id') return meili_api(requests.post, 'indexes', json=json) -def update_rankings(): - json = ['typo', 'words', 'proximity', 'date:desc', 'exactness'] - return meili_api(requests.post, 'indexes/qotnews/settings/ranking-rules', json=json) - -def update_attributes(): - json = ['title', 'url', 'author'] - r = meili_api(requests.post, 'indexes/qotnews/settings/searchable-attributes', json=json) - json = ['id', 'ref', 'source', 'author', 'author_link', 'score', 'date', 'title', 'link', 'url', 'num_comments'] - r = meili_api(requests.post, 'indexes/qotnews/settings/displayed-attributes', json=json) - return r +def update_settings(): + json = { + 'rankingRules': ['typo', 'words', 'proximity', 'date:desc', 'exactness'], + 'searchableAttributes': ['title', 'url', 'author'], + 'displayedAttributes': ['id', 'ref', 'source', 'author', 'author_link', 'score', 'date', 'title', 'link', 'url', 'num_comments'], + } + return meili_api(requests.post, 'indexes/qotnews/settings', json=json) def init(): if not SEARCH_ENABLED: logging.info('Search is not enabled, skipping init.') return print(create_index()) - update_rankings() - update_attributes() + update_settings() def put_story(story): if not SEARCH_ENABLED: return @@ -54,13 +50,11 @@ def put_story(story): def search(q): if not SEARCH_ENABLED: return [] - params = dict(q=q, limit=settings.FEED_LENGTH) - r = meili_api(requests.get, 'indexes/qotnews/search', params=params, parse_json=False) + json = dict(q=q, limit=settings.FEED_LENGTH) + r = meili_api(requests.post, 'indexes/qotnews/search', json=json, parse_json=False) return r if __name__ == '__main__': init() - print(update_rankings()) - print(search('facebook'))