【问题标题】:Iterate through a Sorted Mongoose Collection遍历排序的 Mongoose 集合
【发布时间】:2013-06-18 19:58:46
【问题描述】:

我是 JavaScript、MongoDB 和 Mongoose 的新手。

我有一个来自 db "demodb" 的名为 "students" 的集合。 在我的 JavaScript 文件中,我为集合“students”创建了一个名为“student”的 Mongoose 模式。 “学生”有“姓名”、“性别”和“专业”(均为字符串类型)。

我希望能够首先按字段(按“姓名”字母顺序)对学生进行排序,然后使用 JavaScript 中的 Mongoose 为每个学生执行一些操作

我环顾四周,但要么找到了 Mongo shell 的语法(不是我想要的),要么找到了对我不起作用的示例。

我对 Java 很熟悉,并且希望做一些理想的事情(在排序之后)。

for(Object currentStudent: students) {
  // do something
}

这样的东西也不错。

while(students.hasNext()) {
  Object currentStudent = students.?; //some command to store the current student
  // do something
}

提前谢谢你。如果这个问题看起来微不足道,我深表歉意。

【问题讨论】:

标签: javascript mongodb foreach mongoose


【解决方案1】:

如果您不熟悉这些概念,那么了解 node.js 中的异步编程会有点痛苦。看看this link 的最后一部分,了解一些要避免的教训。

基本上

如果你写

for(var i = 0; i < objects.length;i++) {
  var object = objects[i]
  db.save(object, function(err, result) {
  }
}

所有保存操作都是并行执行的,而不是像 Java 中所期望的那样串行执行。这是第一步。您可以使用诸如 step 或 async 之类的库来帮助您编排调用和迭代。

【讨论】:

    猜你喜欢
    • 2017-06-14
    • 2016-01-07
    • 2019-02-24
    • 2015-02-18
    • 1970-01-01
    • 2021-03-04
    • 2014-04-11
    • 1970-01-01
    相关资源
    最近更新 更多