我试图在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”]只返回两个文件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]也没有任何运气。
谢谢。
答案 0 :(得分:2)
这是'startkey'而不是'startKey'(注意案例)。
http://wiki.apache.org/couchdb/HTTP_view_API#Querying_Options