【问题标题】:How to search with couchdb nano如何使用 couchdb nano 进行搜索
【发布时间】:2019-05-23 14:22:28
【问题描述】:

我正在尝试使用 nano 搜索 couchdb,如下所述:

https://github.com/dscape/nano#dbsearchdesignname-searchname-params-callback

但我收到“文档缺少附件”。

var config = require('./config.js');
var nano = require('nano')(config.dbhost);

var couch = nano.db.use('my-database');

couch.search('object-views', 'by-content', {q: 'hello'}, function(err, data) {
    if(err) {
        console.log('ERROR ', err);
    } else {
        console.log(data);
    }
})

编辑这是我的视图代码:

function (doc) {
  if(doc.type && doc.type==='message') {
    emit(doc.text.toLowerCase(), 1);
  }
}

【问题讨论】:

  • 您是否有名为_design/object-views 的设计文档,其映射功能如下:by-content
  • 是的,我这样做@AlexisCôté,如果我将“搜索”更改为“查看”,它会很好地提取数据。我需要对视图做些什么才能使其正常工作吗?我将使用我的视图代码编辑问题

标签: javascript couchdb couchdb-nano


【解决方案1】:

所以我查看了 nano code 内部,发现该搜索仅适用于 Cloudant。它称为“搜索”类型的视图。

所以不是调用_designdoc/name/_view/something,而是调用:

_designdoc/name/_search/something

所以基本上,使用 db.view

【讨论】:

  • 啊,那就是为什么!那么如何进行文本搜索,例如从搜索字符串“test”中匹配“this is to test search”?
  • 我认为 _search 基本上是一个文本索引(您可以在其中搜索任何内容)。至于 _view,它只是您定义的 map/reduce 函数
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-30
  • 1970-01-01
  • 2011-12-08
  • 2012-05-07
  • 2016-05-31
相关资源
最近更新 更多