2011-11-10 7 views
1

私はCouchDBでビューの照合の利点を得ようとしていますが、私の場合は何が間違っているか確認してください。CouchDB複合キー/ビューの照合が機能しない

|- 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} 

まず、私はその後http://www.cmlenz.net/archives/2007/10/couchdb-joins

に基づかよ、私は、例えばPARENT_IDによってリンクツリーを、実装したいです私は以下のビューを定義しています:

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

startKey = ["root"]のクエリは2つのドキュメントルートのみを返し、それは直接の子ですが、クエリはすべての(倍増した)ドキュメントを返します。

何が問題なのですか?

あなたはその後、クエリhttp://yo.iriscouch.com/cats/_design/app/_view/items?startKey=[%22root%22]なしとまったく同じ返すhttp://yo.iriscouch.com/_utils/database.html?cats

でDBを参照してくださいすることができます任意の引数、つまりstartKeyのように見えますが無視されます。

startKey = ["root"、0] & endKey = ["root"、2]私も幸運にもかかわらず試しました。

ありがとうございます。

答えて