2010-11-09 6 views
8

Je suis nouveau sur android et couchdb. J'ai donc besoin d'un guide sur la façon dont je peux mettre à jour un champ dans couchdb dans android. J'ai essayé de boucler via la console ça marche bien mais par programmation je ne comprends pas comment mettre à jour un champ particulier en disant 'nom'. Voici l'extrait de mettre à jour un document dans CouchDB qui fonctionne très bien et me renvoie l'identifiant de révision mis à jour ...Comment mettre à jour l'enregistrement/champ d'un document dans 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

Je vais vous donner un +1 si vous venez de choisir un meilleur titre (par exemple ajouter « mise à jour partielle » et supprimer « android »). Cela n'a rien à voir avec Android. – user359996

Répondre

12

mises à jour partielles ne sont pas pris en charge par CouchDB. En d'autres termes, pour mettre à jour un champ dans le document, vous devez mettre à jour le champ dans votre document JSON local et envoyer ce document à CouchDB dans son ensemble.

Vous pouvez accomplir ceci en émettant toujours un HTTP PUT, en vous assurant que le _rev approprié est inclus dans votre document.

Plus de détails sont disponibles in the wiki.

+0

Hey merci Ryan ça a fonctionné Merci pour les conseils que j'ai essayé de mettre à jour le document JSON local i.e dans mon cas j'ai fait jsonDoc.put ("nom", "valeur"); puis par httpPutRequest.setEntity (body); il met à jour le dossier. – Jitesh

+0

Content de pouvoir aider. :-) –

Questions connexes