节点,在一个集合中的猫鼬“ findOne”在另一个集合的“查找”中

斯雷

基本上,我有一个简单的场景,首先我需要获取整个集合,例如“汽车”,然后遍历该集合并在另一个集合上执行“ findOne”,例如根据第一个集合中的某些条件创建“用户”。

所以:

// requiring modules and mongoose.connect() part
...
CarModel.find(function(err, cars) {

    console.log("1");

    _.each(cars, function(car) {

        console.log("2");

        UserModel.findOne({username: car.owner}, function(err, user) {
            console.log("3");

            user.some_field++;
            user.save();
        });
    });
});

例如,当汽车收藏有2个文档(相同的car.owner)时,我期望“ some_field”有2个增量,但我只能得到一个。

// console.logs
1
2
2
3
3

我可以猜测我在执行流和异步操作方面在这里做错了什么,有人可以向我解释为什么这不令人担忧。

香港强尼

findOne是异步的,因此findOne可以将两个所有者结果的回调排队,以便在user.some_field两个初始值相同的地方运行然后,每个回调将运行并将新值保存为初始值加1。

这是为什么要使用原子$inc运算符进行更新的经典案例

UserModel.findOneAndUpdate({username: car.owner}, {$inc: {some_field: 1}},
    function(err, numAffected) { ... }
);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

猫鼬预钩 findOneAndUpdate 修改从另一个集合中获取的某些字段

来自分类Dev

猫鼬-插入两个集合:一个集合依赖于另一个集合

来自分类Dev

猫鼬子文档插入到另一个集合中,同时在父架构中保持关系

来自分类Dev

如何用猫鼬中另一个集合的文档填充文档的字段时查询文档?

来自分类Dev

如何在一个集合中查找未被另一个集合中的文档引用的MongoDB文档?

来自分类Dev

如何查找一个dstore集合中而不是另一个dstore集合中的项目?

来自分类Dev

猫鼬存储另一个集合的ObjectId的引用

来自分类Dev

如何使用猫鼬将条目从一个集合复制到另一个?

来自分类Dev

Mongodb将一个集合复制到另一个集合中

来自分类Dev

如何确定一个集合是否包含Python中的另一个集合

来自分类Dev

如何在另一个集合中拥有一个集合?

来自分类Dev

在猫鼬中,如何仅删除集合中找到的一个文档?

来自分类Dev

在猫鼬中,如何仅删除集合中找到的一个文档?

来自分类Dev

猫鼬和平均收视率在一个集合中?

来自分类Dev

用于在另一个集合中的文档中查找数据的 Firestore 匹配规则

来自分类Dev

用猫鼬填充一个集合

来自分类Dev

在另一个集合中查找具有价值的键

来自分类Dev

LinqtoXML:如何删除值不在另一个集合中的节点

来自分类Dev

如何根据对另一个集合的find调用的结果在mongodb集合中查找记录?

来自分类Dev

根据MongoDB中另一个集合中的数据查询一个集合中的数据

来自分类Dev

如何从一个集合中获取数据并插入到 Nodejs 中的另一个集合中?

来自分类Dev

猫鼬在一个字段中处理两个ref ObjectID以获取ObjectId的每个集合

来自分类Dev

猫鼬填充如何将填充子文档连接到另一个集合

来自分类Dev

如何在robomongo中从另一个复制一个集合

来自分类Dev

MongoDB为另一个集合中的每个文档插入一个文档

来自分类Dev

如何在robomongo中从另一个复制一个集合

来自分类Dev

LINQ查询从一个集合中填充另一个

来自分类Dev

如何获取Firebase中另一个集合的文档中的集合

来自分类Dev

根据另一个集合中的值从集合中删除文档

Related 相关文章

  1. 1

    猫鼬预钩 findOneAndUpdate 修改从另一个集合中获取的某些字段

  2. 2

    猫鼬-插入两个集合:一个集合依赖于另一个集合

  3. 3

    猫鼬子文档插入到另一个集合中,同时在父架构中保持关系

  4. 4

    如何用猫鼬中另一个集合的文档填充文档的字段时查询文档?

  5. 5

    如何在一个集合中查找未被另一个集合中的文档引用的MongoDB文档?

  6. 6

    如何查找一个dstore集合中而不是另一个dstore集合中的项目?

  7. 7

    猫鼬存储另一个集合的ObjectId的引用

  8. 8

    如何使用猫鼬将条目从一个集合复制到另一个?

  9. 9

    Mongodb将一个集合复制到另一个集合中

  10. 10

    如何确定一个集合是否包含Python中的另一个集合

  11. 11

    如何在另一个集合中拥有一个集合?

  12. 12

    在猫鼬中,如何仅删除集合中找到的一个文档?

  13. 13

    在猫鼬中,如何仅删除集合中找到的一个文档?

  14. 14

    猫鼬和平均收视率在一个集合中?

  15. 15

    用于在另一个集合中的文档中查找数据的 Firestore 匹配规则

  16. 16

    用猫鼬填充一个集合

  17. 17

    在另一个集合中查找具有价值的键

  18. 18

    LinqtoXML:如何删除值不在另一个集合中的节点

  19. 19

    如何根据对另一个集合的find调用的结果在mongodb集合中查找记录?

  20. 20

    根据MongoDB中另一个集合中的数据查询一个集合中的数据

  21. 21

    如何从一个集合中获取数据并插入到 Nodejs 中的另一个集合中?

  22. 22

    猫鼬在一个字段中处理两个ref ObjectID以获取ObjectId的每个集合

  23. 23

    猫鼬填充如何将填充子文档连接到另一个集合

  24. 24

    如何在robomongo中从另一个复制一个集合

  25. 25

    MongoDB为另一个集合中的每个文档插入一个文档

  26. 26

    如何在robomongo中从另一个复制一个集合

  27. 27

    LINQ查询从一个集合中填充另一个

  28. 28

    如何获取Firebase中另一个集合的文档中的集合

  29. 29

    根据另一个集合中的值从集合中删除文档

热门标签

归档