2010-12-06 10 views
10

を使用してドキュメントの一部を変更するドキュメントを読んで(そしてソフトウェアで遊んでいる)、PUTコマンドは既存のドキュメント全体を置き換えるように見えます(PUTコマンドで送信されたものだけを含む新しいリビジョンを作成します) 。ドキュメントの一部を更新する方法はありますか?例えばCouchDB PUT

、のは、POSTコマンドは次のようなJSONオブジェクトを含む文書を作成しましょう:

{"name" : "Chuck"} 

次に、同じ文書IDのPUTコマンドが追加されます。

{"lastname" : "Norris"} 

は、方法はあります最新のアップデートだけでなく、2つのリビジョンの組み合わせをCouchDBに返すようにするには?それ以外の場合は、ドキュメントを変更すると完全なドキュメントを取得し、完全な(更新された)ドキュメントを返す必要があります。

答えて

10

Document Update Handlersに探してみてください。更新ハンドラは、アプリケーションからPUTあるとき、対応するJavaScript関数は、アプリケーションが、それは二枚をマージすることができますサーバー、上と、既存の文書を送信されたデータと呼ばれますデータを適切に管理する。

+0

上記の回答は一般的な概要を示していますが、このページでは、OPが要求したことを行う方法の詳細と例を示します:https://wiki.apache.org/couchdb/Partial_Updates –