Изменение части документа с помощью CouchDB PUT

Читая документацию (и играя с программным обеспечением), похоже, что команда PUT заменит весь существующий документ (создайте новую ревизию, которая включает только то, что было отправлено в команде PUT). Есть ли способ обновить часть документа?

Например, скажем, команда POST создает документ со следующим объектом JSON:

{"name" : "Chuck"}

Затем команда PUT на том же идентификаторе документа добавляет:

{"lastname" : "Norris"}

Есть ли способ заставить CouchDB вернуть комбинацию двух версий, а не только последнее обновление? В противном случае любое изменение документа потребует получения полного документа и отправки полного (обновленного) документа назад.

Ответ 1

Попробуйте найти Обработчики обновления документа: когда обработчик обновления PUT из вашего приложения, соответствующая функция JavaScript будет вызываться с помощью данные, отправленные вашим приложением, и существующий документ на сервере, который позволяет ему объединить две части данных соответствующим образом.