0

私はcouchappを開発しています。タグと呼ばれるフィールドを含むドキュメントがあり、すべてのドキュメントから一意のタグを取得しようとしています。私のマップ/リデュース関数は次のとおりです。

map.js

function(doc){
        if(doc.tags){
            emit(doc.tags,1);
        }
}

reduce.js

function(keys,values,rereduce){
    return sum(values);
}

返される出力は、すべてのタグの数です。どこが間違っていますか?

4

1 に答える 1

0

すべてのタグのリストが必要な場合は、reduce 関数は必要ありません。オプションでビューを呼び出す必要がありますgroup=true。たとえば、あなたが呼び出す

http://localhost:5984/yourdb/views/tag_view?group=true

または、couch.jsを使用して行うことができます

$.couch.db.view('your_view', {data: {"group": true}});

ドキュメントを見るとajaxOptions、jQuery で通常の ajax リクエストを定義するのと同じ方法でリクエストを定義していることがわかります。したがって、ここに記載されているデータオプションを使用するだけです

詳細については、CouchDB Wiki Groupingを参照してください。

于 2012-07-31T15:22:20.113 に答える