如何使用mongodb nodejs驱动程序调用自定义服务器端功能

时间:2017-04-17 08:05:48

标签: mongodb mongodb-query

我向system.js添加一个函数,如果number为奇数,则返回,并且无法使用nodejs driver的聚合函数调用它。我怎么称呼它?

1 个答案:

答案 0 :(得分:0)

调用自定义函数

您可以使用db.eval()。例如:

db.eval("echo(5)", function(err, result) {
    assert.equal(null, err);
    assert.equal(5, result);
});

但请注意,正如文档所示,不推荐定义和调用系统级javascript函数。

在聚合中使用功能

基本上,外部/自定义功能不适用于聚合框架。在输入时,所有内容都被解析为BSON,因此不允许使用JavaScript或其他任何内容。

请查看Call function inside mongodb's aggregate?以找到解决方法。