2010-11-09 17 views
8

I am new to android and couchdb. Quindi ho bisogno di una guida su come posso aggiornare un campo in couchdb in Android. Ho provato curl via console funziona bene, ma programmaticamente non capisco come aggiornare un particolare campo dire 'nome'. Ecco il frammento di aggiornamento di un documento CouchDB, che funziona bene e mi riporta alla revisione id aggiornato ...Come aggiornare il record/campo di un documento in couchdb

HttpPut httpPutRequest = new HttpPut(hostUrl +"/"+ docId); 
StringEntity body = new StringEntity(jsonDoc.toString()); 
httpPutRequest.setEntity(body); 

httpPutRequest.setHeader("Accept", "application/json"); 
httpPutRequest.setHeader("Content-type", "application/json"); 
+2

vi darò un +1 se basta scegliere un titolo migliore (per esempio aggiungere "aggiornamento parziale" e rimuovere "Android"). Questo non ha nulla a che fare con Android. – user359996

risposta

12

aggiornamenti parziali non sono supportati da CouchDB. In altre parole, per aggiornare un campo nel documento, è necessario aggiornare il campo nel documento JSON locale e inviare tale documento a CouchDB nel suo complesso.

È possibile eseguire questo emettendo ancora un HTTP PUT, assicurandosi che il _rev appropriato sia incluso nel documento.

Ulteriori dettagli sono disponibili in the wiki.

+0

Hey grazie Ryan ha funzionato grazie per la guida ho provato ad aggiornare il documnet JSON locale nel mio caso ho fatto jsonDoc.put ("name", "value"); e poi da httpPutRequest.setEntity (corpo); aggiorna il record. – Jitesh

+0

Contento di aver potuto aiutare. :-) –

Problemi correlati