mongoose根据自定义ID计算功能查找id

时间:2018-06-19 09:55:50

标签: function mongoose id

我想返回给定url参数" id"是文档ID的上部集合。 有了这个,我的意思是,例如我给出一个12位数的参数,例如928106329281,并且它应该返回所有带有_id的文档,当除以1.000.000时,这个数字作为前缀,例如928106329281293222,928106329281123125等。

我试着为此写一个函数:

var calcID = function(demo_id) {
    var found = DemoCollection.find({}).where((_id /1000000) == demo_id)
    return found;
}

但我怀疑这是否有效,不知何故,我想我不能在静态函数中做计算,比如哪,是真的吗?我是否必须使用聚合框架,如果是这样,该函数将如何显示?

我不知道聚合管道中的正确分段顺序是什么样的,例如我应该首先使用基于某些计算添加的自定义字段来执行$ addFields,还是首先执行$ match,并在匹配阶段进行计算?或者我会在$ project阶段进行计算并将其命名为某个自定义字段,然后根据字段名称进行匹配阶段?

计算本身看起来像这样:

var calcID = function(demo_id) {
FlexPotenzial.aggregate([ {
    $addFields: {subID:  {"$eq": [{"$trunc": {"$divide": ["$_id", 1000000]}},+demo_id]}}},{"$match":{subID:true}}

])}
顺便问一下......愚蠢的问题:我怎样才能找到找到的文件?我的功能会是什么样的?我会做一个]).then(docs => {...do something...} ??

我怎么知道返回的是什么...一个游标对象?一个简单的javascript对象直接使用?我对这些javascript回调样式有很多问题..我需要帮助

就像我说的那样,我不确定将上述计算表达式放在何种阶段...

0 个答案:

没有答案