查询MongoDB以在ui中实现typheahead

时间:2016-10-03 09:34:09

标签: mongodb typeahead

我正在尝试查询我的MongoDB,从我的角度ui的typeahead中查找我的集合文档中的所有匹配的名称字段,我必须以表格格式显示匹配文档的内容,我引用了几个文档和写了这个API,当我尝试在高级REST客户端测试时,它显示连接超时,有人能告诉我哪里出错了吗? 我的API代码

var mongoose = require('mongoose');

    var enterprise = mongoose.model('enterprise');

    var search = function(req, res){
    function searchEnterprise(){

        var name = req.params.name;
        enterprise.find({"name": '/^'+ name + '$/i'},function(err, data){
            if (err){
                console.log('err',err);
            } else {
                res.json(data);
                console.log(data);
            }
        });
    }
    }
    module.exports = {
        searchEnterprise : search
    };

1 个答案:

答案 0 :(得分:0)

不需要嵌套函数searchEnterprise()。只是用它

var search = function(req, res){
    var name = req.params.name;

    // can also use $regex like bellow line
    //enterprise.find({'name': {$options:'i', $regex: name }}, or
    // enterprise.find({"name": '/'+ name + '/i'}

    enterprise.find({'name': {$options:'i', $regex: name }},function(err, data){
        if (err){
            console.log('err',err);
            return res.status(400).send({msg: "error"});
        } else {
            console.log(data);
            return res.json(data); 
            // or
            //return res.status(200).send(data);
        }
   });
};

module.exports = {
     searchEnterprise : search
};