Solr支持facet.prefix中的通配符

Solr支持facet.prefix中的通配符,solr,Solr,我有一个在国家名称上有大量方面值的系统。因此,这些国家可以是美国、美国、加拿大等 现在我想让facet进行自定义排序。默认情况下,solr支持基于计数的排序或字母排序。然而,我不希望以这种方式进行排序。我想有一个自定义的排序,这样也可以在顶部的彗星,然后欧洲,然后亚洲等 为此,我编写了一个标记器,它读取一个文本文件并生成如下标记 0001_美国 0002_美国 所以基本上我给排序序列加前缀,然后按字母顺序排序。然后在UI上显示时删除前缀。到目前为止效果很好。现在,由于方面的数量是巨大的,我还想与

我有一个在国家名称上有大量方面值的系统。因此,这些国家可以是美国、美国、加拿大等

现在我想让facet进行自定义排序。默认情况下,solr支持基于计数的排序或字母排序。然而,我不希望以这种方式进行排序。我想有一个自定义的排序,这样也可以在顶部的彗星,然后欧洲,然后亚洲等

为此,我编写了一个标记器,它读取一个文本文件并生成如下标记

0001_美国
0002_美国

所以基本上我给排序序列加前缀,然后按字母顺序排序。然后在UI上显示时删除前缀。到目前为止效果很好。现在,由于方面的数量是巨大的,我还想与自动建议搜索功能。例如,如果用户输入“u”,我应该能够在前面的输入中显示所有以“u”开头的国家。我在前面为此使用了facet.prefix,但在自定义令牌之后,它将不起作用,因为我为令牌添加了前缀000x。另外,facet.prefix似乎不支持通配符。那么我如何提前实现这种类型呢?支持Solr中自定义排序的任何其他方式。我不想得到客户机上的所有数据并进行排序,因为它非常庞大


请帮助

使用autosuggest的正确处理程序,在附加字段中为国家名称编制索引,从而轻松实现这一点

您可以使用类似于country\u sort的内容,在其中输入前缀值(001\u usa,0002\u united state),以及country\u autosugest字段,在其中输入普通值(usa,united states)


然后查询country\u autosugest并按country\u排序。这样,您还可以返回country_autosuggest的值,无需在显示时处理字符串。

您好,谢谢您的回复。也许我会解释一下UI,让它变得清晰。在UI中,我们显示前50个方面,然后显示搜索框。现在,当用户搜索时,我们需要将其作为过滤器应用,并显示已选中的过滤器。现在有两个具有不同令牌的字段,应用的过滤器将与facet字段不匹配,因为它们具有前缀。因此,双字段方法将不起作用,因为我们需要在提前键入搜索后应用筛选器,并在UI上显示应用的筛选器。如果您尚未对其进行排序,是否可以从schema.xml和solr查询/选择URL中粘贴相关位?如果您继续使用0001_usa、0002_usa和您刚才描述的用例进行示例,就会更清楚。