使用猫鼬查询mongodb集合的正则表达式

时间:2018-06-29 01:02:01

标签: javascript node.js mongodb express mongoose

我正在尝试使用regex来查询mongoose,我看到其他帖子也有类似的建议,但我仍然不知道,并且收到了新的错误,而不是仅仅得到一个{ {1}}返回。

我正在尝试null documentquery的值,而不是确切地获取contains

对于我的路线,我有类似的东西

results

有人在我做错事的地方帮我忙吗?

在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

假设下面是您的模型

//Employee.js

import mongoose from 'mongoose';
const Employee = mongoose.Schema({
    Name: { type: String, default: "" },
    Age: { type: Number, default: 0 },
    Email: { type: String, default: "" },
}, { collection: 'Employee' });
export default mongoose.model('Employee', Employee);

您的路由器必须如下所示

var Employee = require('../path/to/Employee.js');

router.get('/name/:value', (req, res, next) => {
    let query = {
        Name: {
            $regex: req.params.value,
            $options: "i"
        }
    };
    Employee.find(query, (err, docs) => {
        if (err) return next(err);
        console.log("Documents-->", docs)
        res.send('success');
    });
});

您无需像上面那样查询就为名称提供单独的参数