如何根据Django Solr中选定的类别形成正确的查询列表

问题描述 投票:0回答:1

有人可以解释我,如果这是一个正确的方法,我试图在过滤器形式中形成查询字段列表,取决于选择了什么类别。

至于现在,如果我选择类别武器,在过滤器中来自其他类别的所有其他字段,显示太像image

我在Solr_backend中形成了这样的查询

 def search_facet(self, query_string, **kwargs):     
        facet_fields = None
        try:
            raw_results = self.conn.search(query_string, facet = 'on' ,** {'facet.field' : ['product_class_exact']})
            facet_fields = raw_results.facets.get('facet_fields', {})
        except (IOError, SolrError) as e:
            if not self.silently_fail:
                raise

            self.log.error("Failed to query Solr using '%s': %s", query_string, e, exc_info=True)
            raw_results = EmptyResults()
        return facet_fields

但它只返回一个字段字符串,product_class_exact': [u'T-shirt', 3, u'Classic', 2, u'Common', 2, u'Bow', 1, u'Sword', 1, u'Teleporter', 1]我应该在这个方法中形成相应的字典,或者它可以用不同的方式完成,因为现在我仍然不知道如何定义哪个字段对应于哪个类别!

python django solr
1个回答
0
投票

固定,thx到solr Irc - self.conn.search(query_string, facet = 'on' ,** {'facet.pivot': 'category_exact,product_class_exact'})

© www.soinside.com 2019 - 2024. All rights reserved.