![](/img/trans.png)
[英]java.lang.NullPointerException while saving bulk documents to couchdb using couchdb4j api in java
[英]Saving Documents to CouchDB Urls with Multiple Slashes
我第一次接觸NoSQL DB是通過Firebase,我通常將json數據存儲到url這樣的URL: category
,然后再將其他內容存儲到URL諸如category/subcategory
。
試圖在CouchDB中做同樣的事情,我遇到了一個問題。
例如,我保存了一個簡單的對象,例如:
{"_id":"one"}
至
database/category
它按預期工作。 然后我嘗試保存以下內容
{"_id":"two"}
至
database/category/subcategory
我收到此錯誤消息:
{"error":"not_found","reason":"Document is missing attachment"}
顯然,當您在網址中使用多個斜杠時,Couch會將資源理解為附件。 如果是這樣,那么如何使數據庫的數據具有多個級別,例如Geography/Continents/Africa/Egypt
?
CouchDB不適合您描述的用法。 CouchDB是平面文檔存儲。
您應該展平結構以將其存儲在CouchDB中。
{"_id":"country-es",
"type":"geography",
"country":"Spain",
"continent":"Europe"
}
{"_id":"country-fr",
"type":"geography",
"country":"France",
"continent":"Europe"
}
然后使用視圖以具有一種機制來分層查詢它。
function (doc) {
if (doc.type == "geography") {
emit([doc.continent,doc.country], doc._id );
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.