我在Mongo中使用distinct来返回一些Jquery Autocomplete中的值,代码如下:
function Reg(title)
{
this.title= title;
}
exports.find = function(req, res) {
var b=req.params.search;
var query = new Array();
var cadsrch = b.split(' ');
var l = cadsrch.length;
var i = 0;
for (i = 0; i < l; i++) {
if(cadsrch[i]!=''){
query[i]=new RegExp('^'+cadsrch[i], 'i');
}
}
var data=new Array();
db.collection('publication', function(err, collection) {
collection.distinct('title',{content:{'$all':query}},{'$or':[{type:'an'},{type:'pub'}]},
function(err, items) {
var l=items.length,i=0;
for (i=0;i<l;i++){
data[i]=new Reg(items[i]);
}
res.jsonp(data);
}
)
});
};
问题在于“标题”列区分大小写,例如car和Car是不同的。我不知道是否有办法避免这种情况并将Car视为与car相同。