Solr 按多值字段中的位置提升结果
我有一个层次结构,比如客户端->项目->子项目(它可以有n个级别)。对于每个叶(子项目),我保留一个从父项到根的多值有序字段,以便搜索可以在名称和父项名称上匹配 当有人搜索“pro”时,我希望结果按以下顺序显示:首先是子项目,然后是项目,然后是客户端,如下所示:Solr 按多值字段中的位置提升结果,solr,Solr,我有一个层次结构,比如客户端->项目->子项目(它可以有n个级别)。对于每个叶(子项目),我保留一个从父项到根的多值有序字段,以便搜索可以在名称和父项名称上匹配 当有人搜索“pro”时,我希望结果按以下顺序显示:首先是子项目,然后是项目,然后是客户端,如下所示: <doc> <str name="name">Sub**pro**ject1</name> <arr name="parentNames"> <str>Proj
<doc>
<str name="name">Sub**pro**ject1</name>
<arr name="parentNames">
<str>Project1</str>
<str>Client1</str>
</arr>
</doc>
<doc>
<str name="name">Subprj2</name>
<arr name="parentNames">
<str>**Pro**ject1</str>
<str>Client1</str>
</arr>
</doc>
<doc>
<str name="name">Subprj3</name>
<arr name="parentNames">
<str>Prj2</str>
<str>Client **Pro**1</str>
</arr>
</doc>
子**项目1
项目1
客户1
子条款2
**项目1
客户1
子条款3
Prj2
客户**Pro**1
提升名称很简单,但提升父名称同样适用于多值字段中的所有条目,因此条目2和条目3不会以我想要的顺序出现
我想没有直截了当的方法来实现这一点,但你会走哪条路?自定义搜索组件,或者在索引时以某种方式增加值