我有一個couchbase服務器,我正在嘗試創建一些視圖,但似乎我沒有完全理解視圖概念。 我有以下兩種示例文檔:Couchbase中的視圖
{
"id": 70,
"status": 2,
"updatedAt": "2014-09-04T08:52:29.969Z",
"createdAt": "2014-09-03T21:32:19.000Z",
"user1": {
"id": 33185,
....
},
"user2": {
"id": 40838,
.....
}
}
{
"id": 71,
"status": 4,
"updatedAt": "2014-09-03T21:33:09.404Z",
"createdAt": "2014-09-03T21:32:20.000Z",
"user1": {
"id": 37126,
....
},
"user2": {
"id": 36094,
.....
}
}
當我創建與此映射功能的視圖:
function (doc, meta) {
if (doc.user1 && doc.user2) {
emit(doc.id, doc);
}
}
所述第一文件(ID:70)是不當第二個是時,由視圖返回。我不明白爲什麼即使它們都有user1和user2。
任何幫助非常感謝。
如果您將開發設計文檔推廣爲產品,是否仍然會發生這種情況? – Kirk 2014-10-30 19:11:20
坦克@Kirk我是Couchbase的新手,我不知道開發視圖只能在文檔的一個子集上工作,當我嘗試使用帶有所有預期文檔的完整子集的視圖時。 – Sami 2014-11-01 09:34:40
你真的不想發佈文檔,這會讓你索引大量並且殺死性能。相反,視圖將始終返回文檔的密鑰,您可以使用該密鑰來使用普通的get方法獲取文檔。 – Paddy 2014-12-17 13:06:20