2010-12-06 10 views
10

Podczas czytania dokumentacji (i zabawy z oprogramowaniem) wygląda na to, że polecenie PUT zastąpi cały istniejący dokument (utwórz nową wersję, która zawiera tylko to, co zostało wysłane w poleceniu PUT) . Czy istnieje sposób na aktualizację części dokumentu?Zmiana części dokumentu za pomocą CouchDB PUT

Na przykład, powiedzmy, że polecenie POST tworzy dokument o następującej obiektu JSON:

{"name" : "Chuck"} 

Następnie polecenie umieścić na tym samym identyfikatorem dokumentu dodaje:

{"lastname" : "Norris"} 

Czy istnieje sposób aby CouchDB zwrócił kombinację dwóch wersji, w przeciwieństwie do ostatniej aktualizacji? W przeciwnym razie każda zmiana w dokumencie będzie wymagać pobrania kompletnego dokumentu i przesłania kompletnego (zaktualizowanego) dokumentu.

Odpowiedz

10

spróbuj poszukać w Document Update Handlers: jeśli obsługa jest aktualizacja PUT z aplikacji, odpowiednia funkcja JavaScript zostanie wywołana z danymi aplikacji wysłanych i dokumentu istniejącego na serwerze, która pozwala mu scalić dwa kawałki dane odpowiednio.

+0

Podczas gdy powyższa odpowiedź daje ogólny przegląd, ta strona podaje szczegóły (i przykłady!), Jak wykonać to, o co wnioskował OP: https://wiki.apache.org/couchdb/Partial_Updates –

Powiązane problemy