我知道如何更新CouchDB中的文檔,但是當我更新文檔時,我沒有爲更新指定的字段被刪除。我如何限制相同。例如,我的CouchDB文檔包含字段:名稱,年齡,電子郵件,我想只更新此文檔的電子郵件字段。所以我只是通過電子郵件字段,它的價值,文檔ID和它的相應版本。但是當我做這樣的更新時,我的文檔現在只包含電子郵件。我該如何限制這一點,即只有電子郵件ID得到更新才能保留剩餘的字段,並且價值完好無損。 我使用jquery.couch.js在CouchDB中更新文檔
2
A
回答
3
也許你正在做的一切都錯了......你試圖以非CouchDB方式解決CouchDB中的問題。爲什麼你將所有的評論存儲在一個文檔中?如果你想找回它們與後一個要求,那麼你可以使用地圖聚合後從單獨的文件這樣的評論:
後的文件:{ _id: "post1", type: "post", ... }
註釋文檔:
{ type: "comment",
post: "post1", // id of the post being commenting
...
}
地圖:
function (self) {
if (!self.type) return;
if (self.type == "post") {
emit([self._id, 0], self);
} else if (self.type == "comment" && self.post) {
emit([self.post, 1, self.time], self);
}
}
檢索後與評論與按日期排序:
curl http://127.0.0.1:5984/yourdb/_design/yourapp/_view/yourview?startkey=[%22post1%22]&endkey=[%22post1%22,{}]
通過這種方式,您還可以只檢索一些註釋並輕鬆實現分頁。所有的評論應該存儲在接近帖子的B-tree中,所以它應該也是有效的。
相同的方法詳細描述here。
2
所以我只是通過在電子郵件領域,它的價值,對文檔ID及其相應 轉。
您需要的整個文檔保存更新的值,不只是要更新的值。把文件看作是一個很大的複合價值;如果不改變整個事物,你不能改變它的一部分。
相關問題
- 1. 更新Couchdb文檔
- 2. 更新nano中的CouchDB文檔
- 3. 如何更新CouchDB中的文檔
- 4. CouchDB的更新設計文檔
- 5. CouchDB的:更新序列和文檔_id
- 6. 連帽 - 更新CouchDB文檔(Node.js)
- 7. CouchDB文檔更新處理程序:Javascript
- 8. CouchDB文檔模型更改?
- 9. CouchDB文檔複製(更新文檔的特定屬性)
- 10. 在CouchDB中同時處理更新文檔?
- 11. 如何在couchdb中更新文檔記錄/字段
- 12. 在CouchDB中鏈接文檔
- 13. 添加新文檔時,couchDB能否自動更新特定文檔?
- 14. 更新從C#代碼中的文檔ID散列斜槓的CouchDB文檔
- 15. 編輯/更新文檔中的嵌套對象CouchDB(node.js)
- 16. Python,CouchDb:如何通過ID更新已存在的文檔
- 17. 如何在CouchDB 2上創建「驗證文檔更新」?
- 18. 借給予CouchDB中下面的文檔CouchDB文檔
- 19. 在solr中更新文檔
- 20. 在couchbase中更新文檔
- 21. 在RavenDB中更新文檔
- 22. 在RavenDB中更新文檔
- 23. 新建文檔驗證:CouchDB的
- 24. CouchDB文檔/功能
- 25. Couchdb參考文檔
- 26. 使用CouchDB交易式更新兩個文檔
- 27. 獲取quote_from_bytes()預期字節更新CouchDB文檔
- 28. couchdb設計視圖,更新文檔創建的字段
- 29. 如何使用Evently保存更新的CouchDB文檔?
- 30. 基於現有屬性的couchdb文檔屬性:批量更新
所以,有關如何去做的任何建議。我正在創建一個討論區並在評論字段中以數組形式保存我的評論。那麼,我該如何實現這一點,以便用戶輸入評論時會更新,而不會影響以前的評論。 – swaroopsm 2012-08-06 12:51:53