【发布时间】:2013-07-08 07:29:42
【问题描述】:
让我举个例子来解释一下这个场景。假设我将数据索引到 Solr 为:
{
"id" : "872919092",
"filename" : "science_book",
"path" : "/local/abc/"
}
现在我想用id : 872919092 修改已经索引到 Solr 的数据。我需要将filename : science_book 更改为filename : history_book,并将新属性topic : mughal 添加到相同的索引数据中,保持path 不变。我不想再次传递path,因为它没有任何变化并且已经索引到 Solr。根据Solr的文档
这个有可能。我如何使用 nodejs solr-client update 方法做到这一点?我想实现以下场景:
- 如果具有特定 id 的 Solr 索引数据中不存在该属性,请将其添加到已索引的数据中,保持先前索引的数据不变。
- 如果该属性已存在于具有特定 id 的 Solr 索引数据中,则更改先前索引的属性的值,保持其他索引数据不变。
我将要添加到 Solr 中的数据作为散列传递,该散列仅包含要添加到 Solr 中已索引数据的新属性以及将先前索引数据的值更改到 Solr。
注意:我正在使用 Solr-4.3.0 和节点模块 solr-client 向 Solr 添加数据。
【问题讨论】:
标签: node.js solr solr4 node-modules