我如何在Mongoose中执行查询查询?

我有一个类似MongoDB的Ebooks数据集

{ "_id" : ObjectId("58b56fe19585b10cd42981d8"), "cover_path" : "D:\\Ebooks\\uploads\\ebooks\\cover\\1488285665748-img1-700x400.jpg", "path" : "D:\\Ebooks\\uploads\\ebooks\\pdf\\1488285665257-Webservices Natraz.pdf", "description" : "ebook", "title" : "book name", "tag" : [ "Hindi", "Other" ], "__v" : NumberInt(0) } 

现在我想search一些关键字是否与"title:"匹配一点,然后显示所有相关的书籍对象。

我的Mongoose模式是:

 var mongoose = require('mongoose'); var Schema = mongoose.Schema; var EbookSchema = new Schema({ title: {type:String}, description: {type:String}, path: {type:String,required:true}, cover_path: {type:String,required:true}, tag: [{ type: String }] }); module.exports = mongoose.model('Ebook', EbookSchema); 

我试试:

 app.get('/ebook?search=',function(req,res){ var search_key = req.param('search'); Ebook.find(title:'search',function(err, ebooks) { if (err) res.send(err); res.json(ebooks); }); }); 

但我发现null我该怎么办? 我只想当我search一个关键字我发现所有相关的对象。

尝试在curlies中包装你的查询,Mongoose期待一个对象作为查询。

 app.get('/ebook?search=',function(req,res){ var search_key = req.param('search'); Ebook.find({title:'search'},function(err, ebooks) { if (err) res.send(err); res.json(ebooks); }); });