1

我试图在 CouchDB 中获得视图整理的好处,但没有成功,有人可以检查一下我的情况有什么问题吗?

首先,我基于http://www.cmlenz.net/archives/2007/10/couchdb-joins

然后,我想实现由 parent_id 链接的树,例如:

|- Li
 |- test
  |- tester

在 CouchDB 中是:

{"_id":"root","name":"Li","completed":true},
{"_id":"102ef7e2e99db3983a3bb60a490015db","parent_id":"root","name":"test","completed":false},
{"_id":"102ef7e2e99db3983a3bb60a4900209e","parent_id":"102ef7e2e99db3983a3bb60a490015db","name":"tester","completed":false}

因此,我定义了以下视图:

items : {
    map : function(doc){
        emit([doc._id, 0], doc);
        emit([doc.parent_id, 1], doc);
    }
}

并且期望 startKey=["root"] 的查询只返回两个文档根并且它是唯一的直接子文档,但是查询返回所有(加倍的)文档,即按键过滤对我不起作用。

可能是什么问题?

您可以在http://yo.iriscouch.com/_utils/database.html?cats查看数据库

然后查询 http://yo.iriscouch.com/cats/_design/app/_view/items?startKey=[%22root%22] 返回完全一样的没有任何参数,即它看起来像 startKey 被忽略。

我试过 startKey=["root", 0]&endKey=["root", 2] 也没有任何运气。

谢谢你。

4

1 回答 1

2

它是“startkey”而不是“startKey”(注意大小写)。

http://wiki.apache.org/couchdb/HTTP_view_API#Querying_Options

于 2011-11-10T17:58:29.490 回答