获取属性猫鼬的数组长度

时间:2019-05-25 19:40:00

标签: node.js mongodb

在我的情况下,我需要属性“ idsProfil”中的ID数量。我不希望属性中的所有ID,而只是数字。

这是我获取出版物的方式。

    const publication = await this.publicationService.paginated(
      {
        $and: [
          { deletedAt: null },
        ],
        $or: [
          { profile: friends},
          { profile: req.user.profile},
        ]
      },
      {populate: [
        ['profile'],
        ['like'],
      ]},
      req.query)

这就是我的对象的创建方式。

const LikeSchema = new Schema({
  _id: String,
  idsProfil: {
    type: [String],
  }
})

由于使用FindAndUpdate,所以无法使用像月球糖一样的预验证,也不能使用Save()

1 个答案:

答案 0 :(得分:0)

要获取Mongoose集合中现有文档的数量,可以使用Model.estimatedDocumentCount()。它将使用元数据浏览您的收藏集。
另一种方法是使用Model.countDocuments()。但是,由于浏览集合的方式,此功能在大型集合上效率不高。它会扫描整个集合并对每个文档进行计数,这效率不高。