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

sgtfey8w  于 2022-11-05  发布在  Solr
关注(0)|答案(2)|浏览(248)

我正在使用Solr为电子商务网站提供分面导航。然而,我需要定义分面的自定义顺序,但我没有找到如何在Solr中完成。
我用的是Solr Net和最新版本的Solr。
下面是我需要做的一个例子。
当前面
作业系统

  • 安卓系统(32)
  • 黑莓操作系统(8)
  • 车窗(6)
  • 苹果iOS(6)
  • 八达(五)
  • 专有(2)

标价

  • 10001 - 20000(42个)
  • 20001年至25000年(12年)
  • 500 - 5000(十一)
  • 5001 - 10000(八)

请注意,这只是一个例子。并有许多其他方面。我想显示价格作为第一个方面,所以需要排序这个方面字段以及像这样的方面选项。
标价

  • 500 - 5000(十一)
  • 5001 - 10000(八)
  • 10001 - 20000(42个)
  • 20001年至25000年(12年)

作业系统

  • 安卓系统(32)
  • 苹果iOS(6)
  • 八达(五)
  • 黑莓操作系统(8)
  • 专有(2)
  • 车窗(6)

因此,我需要按以下方式订购:
1.通过某种方式手动对方面字段进行排序,使其按特定顺序显示
1.按照定义的顺序排列面。对于操作系统,我按字母顺序排列。或者对于那些没有定义顺序的面,可以根据结果中的计数作为默认顺序?
请告知。

oalqel3c

oalqel3c1#

您可以使用facet sort per field来分别对不同的facet进行排序。
例如f.<field_name>.facet.sort=count|index
Solr只提供了计数和索引排序两个选项。其他的都需要通过自定义解决方案或解决方案来实现。

blpfk2vs

blpfk2vs2#

只能按预定义的条件进行排序。
facet.sort是您使用的,它只能是:- count -按计数对约束条件排序(最大计数优先)- index -返回按索引顺序排序的约束条件(按索引术语的字典顺序)。对于ASCII范围中的术语,将按字母顺序排序。
看看这个:http://wiki.apache.org/solr/SimpleFacetParameters#facet.sort

相关问题