2010-12-06 19 views
10

Al leer la documentación (y jugar con el software), parece que un comando PUT reemplazará todo el documento existente (cree una nueva revisión que incluya solo lo que se envió en el comando PUT) . ¿Hay alguna forma de actualizar parte de un documento?Cambiar parte de un documento utilizando CouchDB PUT

Por ejemplo, digamos que un comando POST crea un documento con el siguiente JSON objeto:

{"name" : "Chuck"} 

A continuación, un comando PUT en el mismo ID de documento añade:

{"lastname" : "Norris"} 

¿Hay una manera para que CouchDB devuelva la combinación de las dos revisiones, en lugar de solo la última actualización? De lo contrario, cualquier cambio en un documento requerirá recuperar el documento completo y enviar de vuelta el documento completo (actualizado).

Respuesta

10

intente buscar en Document Update Handlers: cuando un controlador de actualización es PUT desde la aplicación, la función de JavaScript correspondiente será llamada con los datos de su solicitud enviada y el documento existente en el servidor, lo que permite que se funden las dos piezas de datos apropiadamente.

+0

Si bien la respuesta anterior ofrece una descripción general, esta página brinda detalles (y ejemplos) de cómo hacer lo que solicitó el OP: https://wiki.apache.org/couchdb/Partial_Updates –

Cuestiones relacionadas