From 9ec0f4a3fa5808bd9ec4f3c398cde795fc5c53be Mon Sep 17 00:00:00 2001
From: Dennis <2rupnow@informatik.uni-hamburg.de>
Date: Wed, 3 Apr 2019 16:44:32 +0200
Subject: [PATCH] uses new suggest handler from solr

---
 ckanext/odsh/controller.py | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/ckanext/odsh/controller.py b/ckanext/odsh/controller.py
index 21a6ae60..855612bf 100644
--- a/ckanext/odsh/controller.py
+++ b/ckanext/odsh/controller.py
@@ -175,14 +175,15 @@ class OdshAutocompleteController(ApiController):
             'wt': 'json'}
 
         conn = make_connection(decode_dates=False)
-        log.debug('Package query: %r' % query)
+        log.debug('Suggest query: %r' % query)
         try:
             solr_response = conn.search('', search_handler='suggest', **query)
         except pysolr.SolrError as e:
             raise SearchError('SOLR returned an error running query: %r Error: %r' %
                               (query, e))
 
-        if solr_response.hits == 0:
-            raise SearchError('Dataset not found in the search index')
-        else:
-            return base.response.body_file.write(str(solr_response.docs[0]))
+        suggest = solr_response.raw_response.get('suggest')
+        hits = suggest.get(query.get('suggest.dictionary')).get(query.get('suggest.q')).get('numFound')
+        if hits >= 1:
+            return base.response.body_file.write(suggest.get(query.get('suggest.dictionary'))
+                                                 .get(query.get('suggest.q')).get('suggestions')[0].get('term'))
-- 
GitLab