2010-11-09 3 views
8

Я новичок в android и couchdb. Поэтому мне нужно руководство по обновлению поля в couchdb в android. Я пытался скручиваться через консоль, он отлично работает, но программно я не понимаю, как обновить конкретное поле, скажем «имя». Вот фрагмент кода обновления документа в CouchDB, который отлично работает и возвращает мне обновленный идентификатор версии ...Как обновить запись/поле документа в 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

Я дам вам +1, если вы просто выбрать лучшее название (например, добавление «частичное обновление» и удалить «андроид»). Это не имеет ничего общего с Android. – user359996

ответ

12

Частичные обновления не поддерживаются CouchDB. Другими словами, чтобы обновить поле в документе, вы должны обновить это поле в своем локальном документе JSON и перенести этот документ на CouchDB в целом.

Вы можете выполнить это, все еще выдав HTTP PUT, гарантируя, что соответствующий _rev включен в ваш документ.

Более подробная информация доступна in the wiki.

+0

Эй, спасибо, Райан, он работал благодаря руководству, я попытался обновить локальный JSON documnet. В моем случае я сделал jsonDoc.put («name», «value»); а затем httpPutRequest.setEntity (тело); он обновляет запись. – Jitesh

+0

Рад, что я мог помочь. :-) –

Смежные вопросы