コード例 #1
0
ファイル: views.py プロジェクト: Lashuk1729/ahmia-site
    def suggest(self, **kwargs):
        """ Did you mean functionality """
        suggest = None
        es_obj = self.es_obj or utils.get_elasticsearch_object()

        payload = {
            "index": utils.get_elasticsearch_tor_index(),
            "doc_type": utils.get_elasticsearch_type(),
            "size": 0,
            "body": {
                "suggest": {
                    "text": kwargs.get('q'),
                    "simple-phrase": {
                        "phrase": {
                            "field": "fancy",
                            "gram_size": 2   # todo make this applicable?
                        }
                    }
                }
            }
        }
        resp = es_obj.search(**payload)

        try:
            suggestions = resp['suggest']['simple-phrase'][0]['options']
            if len(suggestions) > 0:
                suggest = suggestions[0]['text']
        except (TypeError, ValueError) as e:
            logger.exception(e)

        return suggest
コード例 #2
0
ファイル: views.py プロジェクト: iriahi/ahmia-site
 def get_queryset(self, **kwargs):
     if self.es_obj is None:
         es_obj = utils.get_elasticsearch_object()
     hits = es_obj.search(**self.get_es_context(**kwargs))
     return self.format_hits(hits)
コード例 #3
0
 def get_queryset(self, **kwargs):
     if self.es_obj is None:
         es_obj = utils.get_elasticsearch_object()
     hits = es_obj.search(**self.get_es_context(**kwargs))
     return self.format_hits(hits)
コード例 #4
0
    def __init__(self):
        super(BaseCommand, self).__init__()

        self.es_obj = utils.get_elasticsearch_object()
        self.es_index = utils.get_elasticsearch_tor_index()