使用" JSON Facet API"可以在solr 5.3中对嵌套文档进行分面。 http://yonik.com/solr-nested-objects/
我使用Solr版本4.8因此我无法使用" JSON Facet API"。
我使用"阻止加入查询"我有父文件和子文档: https://cwiki.apache.org/confluence/display/solr/Other+Parsers#OtherParsers-BlockJoinQueryParsers
正如您在文档中看到的,我需要使用' 阻止加入儿童查询解析器'得到儿童文档: q = {!child of =" content_type:parentDocument"} title:lucene
并使用" 阻止加入父查询解析器"获取父文档: q = {!parent which =" content_type:parentDocument"}评论:SolrCloud
我想使用"阻止加入父查询解析器"并将子字段作为构面过滤器。
换句话说,用户使用搜索词组搜索父文档,并使用子字段作为构面过滤器来过滤文档。
有没有办法做到这一点?
答案 0 :(得分:1)
根据文档https://cwiki.apache.org/confluence/display/solr/JSON+Request+API
json api看起来像是一种以json对象的形式呈现参数的方式,而不是一个dotted.variable.names分配列表:
(引自上面的链接页面)
分面示例
实际上,您甚至不需要从JSON主体开始进行智能合并就非常有用。请考虑以下完全由请求参数组成的请求:
var allWords = $('pre').innerText;
allWords = allWords.split('\n');
allWords.length == some really big number
这相当于具有以下JSON主体或json参数:
curl http://localhost:8983/solr/techproducts/query -d 'q=*:*&rows=1&
json.facet.avg_price="avg(price)"&
json.facet.top_cats.terms={field:"cat",limit:5}'
(编辑:代码的固定标记)