3

我有一些格式如下的文件:

{
 url: 'some-unique-url',
 name: 'some-name'
}

我需要做的是通过提供一个包含我需要选择的 url 的数组来选择具有特定 url 的文档:

['some-unique-url', 'another-url']

这是我目前的看法:

function(doc) {
  if(doc.type == 'message'){
    emit([doc.url], null);
  }
}

这是我的 node.js 代码。我正在使用nano

db.view('message', 'by_url', {'key': urls}, function(err, body){
    res.send(body);
});

如果我在数组中只有一个项目,但只要我添加另一个项目,这就是我得到的:

{"total_rows":18,"offset":11,"rows":[]}

我也尝试过startkeyendkey它也可以工作,但它的作用与前一个相同:

db.view('message', 'by_url', {'startkey': online_users_ids, 'endkey': [online_users_ids, {}]}, function(err, body){
    res.send(body);
});

我正在尝试用 couchdb 和 nano 做些什么?如果没有,我能在不损失性能的情况下得到最接近的东西是什么?提前致谢!

4

1 回答 1

4

您需要使用keys而不是CouchDB API Referencekey中记录的那样。

db.view('message', 'by_url', {'keys': urls}, function(err, body){
    res.send(body);
});
于 2015-04-23T09:07:18.813 回答