通过动态生成的字段名称搜索solr

  • 本文关键字:搜索 solr 字段 动态 solr
  • 更新时间 :
  • 英文 :


我有一个solr服务器,该服务器具有" PhoneNumbers*"

的动态字段

当它通过mongo-connector从我们的mongo数据库收到记录时,最终看起来像这样:

{
    phoneNumbers.0: "123-456-7890",
    phoneNumbers.1: "321-654-0987"
}

我有办法只对电话号码字段查询。这样的东西:

phoneNumbers.*:"123-456-7890"

我正在尝试防止像这样的硬编码:

phoneNumbers.0:"123-456-7890" || phoneNumbers.1:"123-456-7890" || phoneNumbers.2:"123-456-7890"...

.0.1条目来自mongo连接器,使文档变平,以允许在solr中存在任何子图表。

解决此问题的最简单方法是添加一个字段以包含所有值,并将字段设置为多估件(以便可以保留多个值),然后使用copyField指令告诉Solr将所有内容放在PhoneNumbers中。然后,您可以搜索该字段以匹配phoneNumbers字段的任何条目。

例如:

<copyField source="phoneNumbers.*" dest="phoneNumbers" />

最新更新