2010-12-06 24 views
10

閱讀文檔(並使用該軟件進行操作),它看起來像一個PUT命令將替換整個現有文檔(創建一個新的版本,其中只包含在PUT命令中發送的內容) 。有沒有辦法更新文檔的一部分?使用CouchDB更改文檔的一部分PUT

例如,假設一個POST命令創建具有下列JSON對象的文檔:

{"name" : "Chuck"} 

然後在相同的文檔ID PUT命令補充說:

{"lastname" : "Norris"} 

是否有辦法讓CouchDB返回兩個修訂版的組合,而不僅僅是最新的更新?否則,對文檔的任何更改都需要檢索完整文檔,並將完整(更新)的文檔發回。

回答

10

嘗試尋找到Document Update Handlers:當一個更新的處理程序是從應用程序PUT,相應的JavaScript函數將與您的應用程序發送數據和服務器上現有的文件,這讓它合併的兩件被稱爲數據適當。

+0

雖然上面的答案給出了一般性概述,但本頁給出瞭如何執行OP請求的具體內容(和示例!):https://wiki.apache.org/couchdb/Partial_Updates – 2016-05-08 14:48:38