为mongoose安装插件 - 获取错误

时间:2013-05-12 23:25:12

标签: node.js mongodb mongoose

我正在尝试添加我的第一个插件 - mongoose-text-search。

https://npmjs.org/package/mongoose-text-search

我收到错误:How to Error: text search not enabled我无法弄明白。

我的模式在单独的文件中,它被编译成我导出的模型。 (工作良好。) 的 blogSchema.js

var mongoose  = require('mongoose');
var textSearch = require('mongoose-text-search');

var blogSchema = new mongoose.Schema({
  title:  String,
  author: String,
  }],
});

// give our schema text search capabilities
blogSchema.plugin(textSearch);

var Blog = mongoose.model('Blog', blogSchema);

exports.Blog = Blog;

这是服务器端的相关代码。当客户端向/ search /发送请求时, 套接字挂起 - Got error: socket hang up并且在服务器端我得到了 How to Error: text search not enabled消息。

server.js

 var express    = require('express')
, mongoose  = require('mongoose')
, textSearch = require('mongoose-text-search');

var search_options = {
    project: 'title -_id'             

};

app.get('/search', function (req, res) {

    console.log("inside text search");
    Reading.textSearch('writing', search_options, function (err, output) {
        if (err) throw err;
        console.log(output);
    });

});

感谢。

1 个答案:

答案 0 :(得分:1)

您需要按照here所述在MongoDB服务器上启用文本搜索,因为默认情况下它已被禁用。