为来自Solr的Facets设置自定义顺序

时间:2013-09-02 15:23:10

标签: solr solrnet faceted-search

我正在使用Solr为电子商务网站提供分面导航。但是我需要定义facet的自定义顺序,但我没有在Solr中找到如何做到这一点。

知道怎么做吗?我正在使用Solr Net和最新版本的Solr。

以下是我需要做的一个例子。

当前方面

操作系统

  • Android(32)
  • Blackberry OS(8)
  • Windows(6)
  • Apple iOS(6)
  • Bada(5)
  • 专有(2)

价格

  • 10001 - 20000(42)
  • 20001 - 25000(12)
  • 500 - 5000(11)
  • 5001 - 10000(8)

请注意,这只是一个例子。并有许多其他方面。        我想将Price显示为第一个方面,因此需要订购此facet字段以及这样的方面选项。

价格

  • 500 - 5000(11)
  • 5001 - 10000(8)
  • 10001 - 20000(42)
  • 20001 - 25000(12)

操作系统

  • Android(32)
  • Apple iOS(6)
  • Bada(5)
  • Blackberry OS(8)
  • 专有(2)
  • Windows(6)

所以我需要订购它:

  1. 通过某种方式手动订购Facet字段,以便按特定顺序显示
  2. 按照定义的顺序排列Facets。对于OS,我按字母顺序排序。或者可能是那些没有定义订单的方面可以根据结果中的计数数量作为默认订单?
  3. 请告知。

2 个答案:

答案 0 :(得分:7)

您可以使用每个字段的构面排序分别对不同的构面进行排序。

e.g。 f.<field_name>.facet.sort=count|index

Solr只提供了两个选项Count和Index排序。还需要通过Custome解决方案或解决方案来实现其他任何功能。

答案 1 :(得分:0)

您只能按预定义标准排序。

facet.sort是您使用的,它只能是: - count - 按计数排序约束(最高计数优先) - index - 返回按索引顺序排序的约束(按索引术语排序)。对于ascii范围内的术语,这将按字母顺序排序。

看看这个:http://wiki.apache.org/solr/SimpleFacetParameters#facet.sort