2014-12-24 2 views
0

Zend_Service_Solr Я могу добавить или удалить запись.Zend service solr update document

$solr->addDocument($document); 

Есть ли способ, которым я могу обновить запись. Я не мог найти для этого документа. Или есть расширение для того, чтобы сделать то же самое.

ответ

1

В большинстве случаев обновление документа в Solr заключается в том, чтобы снова добавить тот же документ (с тем же значением для поля uniqueKey).

В последних версиях Solr можно выполнять определенные обновления, но для них требуются все поля, которые необходимо сохранить (чтобы документ можно было повторно добавить внутренне) и специальный синтаксис обновления. Также существует некоторая работа, когда нетекстовые DocValues ​​могут обновляться без повторной отправки полного документа, но в настоящее время это не входит в какую-либо выпущенную версию Solr.

Лучший способ справиться с этим - это просто повторить отправку документа с обновленными значениями и иметь прямой способ сделать это в коде приложения.

+0

U означает, что он используется для того, чтобы добавить документ? Если да, то это не даст никакой уникальной ошибки Key. –

+0

Тот же код. Он не даст уникальную ошибку Key - он обновит старый документ. – MatsLindh

+0

Ничего себе, спасибо тонну. –